View | Details | Raw Unified | Return to bug 26884
Collapse All | Expand All

(-)univention-management-console-web-server (-3 / +14 lines)
 Lines 73-82    Link Here 
73
		self.client = umcp.Client()
71
		self.client = umcp.Client()
74
		self.client.signal_connect( 'authenticated', self._authenticated )
72
		self.client.signal_connect( 'authenticated', self._authenticated )
75
		self.client.signal_connect( 'response', self._response )
73
		self.client.signal_connect( 'response', self._response )
76
		if self.client.connect():
74
		try:
75
			if not self.client.connect():
76
				CORE.process( 'Failed to connect ... just kidding' )
77
			CORE.info('SessionClient(0x%x): connected to UMC server' % (id(self),))
77
			CORE.info('SessionClient(0x%x): connected to UMC server' % (id(self),))
78
		else:
78
		except umcp.NoSocketError:
79
			CORE.process('SessionClient(0x%x): connection to UMC server failed' % (id(self),))
79
			CORE.process('SessionClient(0x%x): connection to UMC server failed' % (id(self),))
80
			raise umcp.NoSocketError( 'Connection failed' )
80
		self._auth_response = None
81
		self._auth_response = None
81
		self._auth_response_queue = None
82
		self._auth_response_queue = None
82
		self._requestid2response_queue = {}
83
		self._requestid2response_queue = {}
 Lines 214-220    Link Here 
214
					queuerequest.sessionid = str( uuid.uuid4() )
215
					queuerequest.sessionid = str( uuid.uuid4() )
215
				# create new session / umcp client
216
				# create new session / umcp client
216
				# add a small offset to the timeout in order to avoid a mismatch between frontend and backend
217
				# add a small offset to the timeout in order to avoid a mismatch between frontend and backend
217
				client = SessionClient(timeout = _session_timeout + 5)
218
				try:
219
					client = SessionClient(timeout = _session_timeout + 5)
220
				except Exception, e:
221
					CORE.process( 'Failed to create UMC connection: %s' % str(e ) )
222
					response = umcp.Response( queuerequest.request )
223
					response.status = httplib.UNAUTHORIZED # set status to unauthorized
224
					queuerequest.response_queue.put( response )
225
					return
226
					
218
				cls.sessions[queuerequest.sessionid] = client
227
				cls.sessions[queuerequest.sessionid] = client
219
				callback = notifier.Callback(cls.cleanup_session, queuerequest.sessionid)
228
				callback = notifier.Callback(cls.cleanup_session, queuerequest.sessionid)
220
				client.client.signal_connect( 'closed', callback )
229
				client.client.signal_connect( 'closed', callback )

Return to bug 26884