kopano-core 10.0.6, kopano-cli and kopano-admin don't work, print SOAP message instead


  • The problem is 100% reproducible. Code is built from the tagged 10.0.6 release.

    After the message appears, entering anything starting with < and ending with > will make the script terminate. (if executed directly from the shell, too). If anything but something starting with < and ending with > is typed in, the program will not terminate but be stuck at this point.

    kopano-cli --list-users
    <?xml version="1.0" encoding="UTF-8"?>
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xop="http://www.w3.org/2004/08/xop/include" xmlns:xmlmime="http://www.w3.org/2004/11/xmlmime" xmlns:ns="urn:zarafa"><SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><ns:logon><szUsername>SYSTEM</szUsername><szPassword></szPassword><szImpersonateUser></szImpersonateUser><szVersion>10.0.6</szVersion><ulCapabilities>59219</ulCapabilities><ulFlags>0</ulFlags><sLicenseReq></sLicenseReq><ullSessionGroup>7669773945988952376</ullSessionGroup><szClientApp>python3</szClientApp><szClientAppVersion>3.8.2 (default, Jul 18 2020, 19:35:03) 
    [GCC 9.2.0]</szClientAppVersion><szClientAppMisc>/usr/bin/kopano-cli</szClientAppMisc></ns:logon></SOAP-ENV:Body></SOAP-ENV:Envelope>
    

    When running the code via pdb, the following stack trace can be retrieved:

    (Pdb) w
      <stdin>(1)<module>()
      /usr/lib/python3.8/pdb.py(1596)run()
    -> Pdb().run(statement, globals, locals)
      /usr/lib/python3.8/bdb.py(580)run()
    -> exec(cmd, globals, locals)
      <string>(1)<module>()
      /usr/lib/python3.8/site-packages/kopano_cli/__init__.py(597)main()
    -> server = kopano.server(options, parse_args=True)
      /usr/lib/python3.8/site-packages/kopano/__init__.py(86)__call__()
    -> return self.__callFunc(*args, **kwargs)
      /usr/lib/python3.8/site-packages/kopano/__init__.py(111)__serverFactory()
    -> return _Server(*args, **kwargs)
      /usr/lib/python3.8/site-packages/kopano/server.py(314)__init__()
    -> self.mapisession = OpenECSession(
      /usr/lib/python3.8/site-packages/MAPI/Util/__init__.py(72)OpenECSession()
    -> admin.ConfigureMsgService(uid, 0, 0, profprops)
      /usr/lib/python3.8/site-packages/MAPICore.py(1640)ConfigureMsgService()
    -> return _MAPICore.IMsgServiceAdmin_ConfigureMsgService(self, lpUID, ulUIParam, ulFlags, cValues)
    > /usr/lib/python3.8/site-packages/MAPI/Struct.py(254)<lambda>()
    -> return type(clsname, (MAPIError,), {'__init__': lambda self: MAPIError.__init__(self, hr, descr)})