Bug 25237 - Absturz des UMC-Servers wenn die Verbindung zu schnell geschlossen wird
Absturz des UMC-Servers wenn die Verbindung zu schnell geschlossen wird
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: UMC (Generic)
UCS 3.0
Other Linux
: P5 critical (vote)
: UCS 3.0-1
Assigned To: Andreas Büsching
Jascha Geerds
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-12-06 17:16 CET by Alexander Kläser
Modified: 2012-03-04 14:34 CET (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
Test-Skript (302 bytes, text/plain)
2011-12-06 17:16 CET, Alexander Kläser
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Kläser univentionstaff 2011-12-06 17:16:09 CET
Created attachment 3975 [details]
Test-Skript

Derzeit stürzt der UMC-Server ab, wird ein Command gesendet und danach die
Verbindung direkt wieder geschlossen (siehe Test-Skript). Folgender Traceback
tritt auf:

====================
06.12.11 17:26:01.685  MAIN        ( INFO    ) : Incoming connection from
::ffff:10.200.26.26:33100
06.12.11 17:26:01.685  MAIN        ( INFO    ) : Established connection:
::ffff:10.200.26.26:33100
06.12.11 17:26:01.685  PARSER      ( INFO    ) : UMCP REQUEST 14098-4872 parsed
successfully
06.12.11 17:26:01.685  MAIN        ( INFO    ) : Incoming request of type AUTH
06.12.11 17:26:01.686  MAIN        ( PROCESS ) : Parser error: (551,
u'Unverst\xe4ndlicher nachrichtenkopf')
06.12.11 17:26:01.686  AUTH        ( INFO    ) : PAM: trying to authenticate
hans
06.12.11 17:26:03.793  AUTH        ( INFO    ) : Authentication for hans was
succcessful
Traceback (most recent call last):
  File "/usr/sbin/univention-management-console-server", line 206, in <module>
    umc_daemon.do_action()
  File "/usr/lib/pymodules/python2.6/daemon/runner.py", line 186, in do_action
    func(self) 
  File "/usr/lib/pymodules/python2.6/daemon/runner.py", line 131, in _start
    self.app.run()
  File "/usr/sbin/univention-management-console-server", line 191, in run
    notifier.loop()
  File "/usr/lib/pymodules/python2.6/notifier/nf_generic.py", line 284, in loop
    step()
  File "/usr/lib/pymodules/python2.6/notifier/nf_generic.py", line 276, in step
    __min_timer = dispatch.dispatcher_run()
  File "/usr/lib/pymodules/python2.6/notifier/dispatch.py", line 72, in
dispatcher_run
    if not disp():
  File "/usr/lib/pymodules/python2.6/notifier/threads.py", line 143, in
_simple_threads_dispatcher
    task.announce()
  File "/usr/lib/pymodules/python2.6/notifier/threads.py", line 134, in
announce
    self._callback( self, self._result )
  File "/usr/lib/pymodules/python2.6/univention/management/console/auth.py",
line 90, in _auth_result
    self.signal_emit( 'auth_return', success )
  File "/usr/lib/pymodules/python2.6/notifier/signals.py", line 68, in
signal_emit
    self.__signals[ signal ].emit( *args )
  File "/usr/lib/pymodules/python2.6/notifier/signals.py", line 34, in emit
    if args: cb( *args )
  File "/usr/lib/pymodules/python2.6/univention/management/console/auth.py",
line 144, in _auth_return
    self.signal_emit( 'authenticated', True )
  File "/usr/lib/pymodules/python2.6/notifier/signals.py", line 68, in
signal_emit
    self.__signals[ signal ].emit( *args )
  File "/usr/lib/pymodules/python2.6/notifier/signals.py", line 34, in emit
    if args: cb( *args )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/protocol/session.py",
line 87, in _authenticated
    self.signal_emit( 'authenticated', success, self )
  File "/usr/lib/pymodules/python2.6/notifier/signals.py", line 68, in
signal_emit
    self.__signals[ signal ].emit( *args )
  File "/usr/lib/pymodules/python2.6/notifier/signals.py", line 34, in emit
    if args: cb( *args )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/protocol/server.py",
line 103, in _authenticated
    self._response( state.authResponse, state )
  File
"/usr/lib/pymodules/python2.6/univention/management/console/protocol/server.py",
line 275, in _response
    ret = state.socket.send( data )
  File "/usr/lib/python2.6/socket.py", line 167, in _dummy
    raise error(EBADF, 'Bad file descriptor')
socket.error: [Errno 9] Bad file descriptor
====================
Comment 1 Andreas Büsching univentionstaff 2011-12-28 15:34:06 CET
Das wird jetzt abgefangen. Getestet werden kann dies auch mit dem UMC Client

umc-command -U Administrator -P univention -x ucr/get -l -o ldap/hostdn

-x sorgt dafür, dass die Verbindung gleich nach dem Absenden des Request wieder geschlossen wird.
Comment 2 Jascha Geerds univentionstaff 2012-02-24 12:54:51 CET
Der Bug wurde gefixed; Changelog vorhanden.
Comment 3 Sönke Schwardt-Krummrich univentionstaff 2012-03-04 14:34:04 CET
UCS 3.0-1 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte dieser Bug dupliziert
werden: "Clone This Bug"