equal
deleted
inserted
replaced
53 // |
53 // |
54 EXPORT_C TInt RBlacklistClient::Connect() |
54 EXPORT_C TInt RBlacklistClient::Connect() |
55 { |
55 { |
56 WRITELOG( "RBlacklistClient::Connect - begin" ); |
56 WRITELOG( "RBlacklistClient::Connect - begin" ); |
57 |
57 |
58 TInt retryCount = 2; |
|
59 TInt error = KErrNone; |
|
60 |
|
61 iSessionOk = EFalse; |
58 iSessionOk = EFalse; |
62 |
59 |
63 while ( retryCount ) |
60 TInt error = StartServer(); |
64 { |
61 |
65 // try create session, if ok, then break out and return KErrNone |
62 if ( error == KErrNone || error == KErrAlreadyExists ) |
|
63 { |
|
64 WRITELOG( "RBlacklistClient::Connect() - creating session" ); |
66 error = CreateSession( KBlacklistServerName, Version() ); |
65 error = CreateSession( KBlacklistServerName, Version() ); |
67 if( error != KErrNotFound && error != KErrServerTerminated ) |
66 } |
68 { |
67 |
69 iSessionOk = ETrue; |
68 if( error == KErrNone ) |
70 break; |
69 { |
71 } |
70 iSessionOk = ETrue; |
72 |
|
73 // Cannot create session, start server |
|
74 error = StartServer(); |
|
75 |
|
76 if ( error != KErrNone && error != KErrAlreadyExists ) |
|
77 { |
|
78 break; |
|
79 } |
|
80 |
|
81 --retryCount; |
|
82 } |
71 } |
83 |
72 |
84 WRITELOG( "RBlacklistClient::Connect - end" ); |
73 WRITELOG( "RBlacklistClient::Connect - end" ); |
85 |
74 |
86 return error; |
75 return error; |
103 // RBlacklistClient::StartServer() |
92 // RBlacklistClient::StartServer() |
104 // --------------------------------------------------------------------------- |
93 // --------------------------------------------------------------------------- |
105 // |
94 // |
106 TInt RBlacklistClient::StartServer() |
95 TInt RBlacklistClient::StartServer() |
107 { |
96 { |
108 WRITELOG( "RBlacklistClient::CustomSecurityCheckL - begin" ); |
97 WRITELOG( "RBlacklistClient::StartServer - begin" ); |
109 |
98 |
110 const TUidType serverUid = ( KNullUid, KNullUid, KUidKBlacklistServer ); |
|
111 |
|
112 RProcess server; |
99 RProcess server; |
113 TInt error = server.Create( KBlacklistServerExe, KNullDesC ); |
100 TInt error = server.Create( KBlacklistServerExe, KNullDesC ); |
114 if( error != KErrNone ) |
101 if( error != KErrNone ) |
115 { |
102 { |
116 return error; |
103 return error; |
130 |
117 |
131 User::WaitForRequest( status ); |
118 User::WaitForRequest( status ); |
132 error = server.ExitType() == EExitPanic ? KErrGeneral : status.Int(); |
119 error = server.ExitType() == EExitPanic ? KErrGeneral : status.Int(); |
133 server.Close(); |
120 server.Close(); |
134 |
121 |
135 WRITELOG( "RBlacklistClient::Version - end" ); |
122 WRITELOG( "RBlacklistClient::StartServer - end" ); |
136 |
123 |
137 return error; |
124 return error; |
138 } |
125 } |
139 |
126 |
140 // --------------------------------------------------------------------------- |
127 // --------------------------------------------------------------------------- |