Thank you Jean-Paul for replying,
I still have some things that I don't understand:
If I put your piece of code in my factory's protocol, I can connect to the server but as soon as I enter the username, I got the an error message telling that Server doesn't support "will" ('Server' object has no attribute 'will').
2009-08-25 00:32:40+0200 [-] Log opened.
2009-08-25 00:32:40+0200 [-] twisted.internet.protocol.ServerFactory starting on 4738
2009-08-25 00:32:40+0200 [-] Starting factory
2009-08-25 00:32:45+0200 [AuthenticatingTelnetProtocol,0,127.0.0.1] Unhandled Error
Traceback (most recent call last):
File "C:\Python26\lib\site-packages\twisted\python\log.py", line 84, in callWithLogger
return callWithContext({"system": lp}, func, *args, **kw)
File "C:\Python26\lib\site-packages\twisted\python\log.py", line 69, in callWithContext
return context.call({ILogContext: newCtx}, func, *args, **kw)
File "C:\Python26\lib\site-packages\twisted\python\context.py", line 59, in callWithContext
return self.currentContext().callWithContext(ctx, func, *args, **kw)
File "C:\Python26\lib\site-packages\twisted\python\context.py", line 37, in callWithContext
return func(*args,**kw)
--- <exception caught here> ---
File "C:\Python26\lib\site-packages\twisted\internet\selectreactor.py", line 146, in _doReadOrWrite
why = getattr(selectable, method)()
File "C:\Python26\lib\site-packages\twisted\internet\tcp.py", line 463, in doRead
return self.protocol.dataReceived(data)
File "C:\Python26\lib\site-packages\twisted\protocols\basic.py", line 231, in dataReceived
why = self.lineReceived(line)
File "C:\Python26\lib\site-packages\twisted\conch\telnet.py", line 925, in lineReceived
newState = getattr(self, "telnet_" + oldState)(line)
File "C:\Python26\lib\site-packages\twisted\conch\telnet.py", line 967, in telnet_User
self.transport.will(ECHO)
exceptions.AttributeError: 'Server' object has no attribute 'will'
I understand that this has something to do with TelnetTranport but how to implement it?
I read the telnet_echo.tac but in my case I have to manage the portal also and that is a litle bit too complex for me.
You say also that AuthenticatingTelnetProtocol expects to be connected to an ITelnetTransport, but the documentation says "When the information is collected, it is passed to a portal and an avatar
implementing ITelnetProtocol is requested".
I'm lost.
May I abuse to ask you to tell how to do?
Many thanks
Philippe