U  W[ü ã@sÞdZddlmZmZddlZddlZddlmZddlm Z m Z Gdd„de j ƒZ Gdd „d e j ƒZ ee jƒGd d „d e j ƒƒZGd d „d e j ƒZGdd„de j ƒZGdd„de j ƒZGdd„de j ƒZdd d d dddgZdS)zzImplement standard (and unused) TCP protocols. These protocols are either provided by inetd, or are not provided at all. é)Úabsolute_importÚdivisionN)Ú implementer)ÚprotocolÚ interfacesc@seZdZdZdd„ZdS)ÚEchozC As soon as any data is received, write it back (RFC 862). cCs|j |¡dS©N)Ú transportÚwrite©ÚselfÚdata©rú8/usr/lib/python3/dist-packages/twisted/protocols/wire.pyÚ dataReceivedszEcho.dataReceivedN©Ú__name__Ú __module__Ú __qualname__Ú__doc__rrrrrrsrc@seZdZdZdd„ZdS)ÚDiscardz. Discard any received data (RFC 863). cCsdSrrr rrrr#szDiscard.dataReceivedNrrrrrrsrc@s4eZdZdZdZdd„Zdd„Zdd„Zd d „Zd S) ÚChargenz- Generate repeating noise (RFC 864). sG@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ !"#$%&?cCs|j |d¡dS)Nr)r ZregisterProducer©r rrrÚconnectionMade0szChargen.connectionMadecCs|j |j¡dSr)r r ÚnoiserrrrÚresumeProducing4szChargen.resumeProducingcCsdSrrrrrrÚpauseProducing8szChargen.pauseProducingcCsdSrrrrrrÚ stopProducing<szChargen.stopProducingN) rrrrrrrrrrrrrr)s rc@s eZdZdZdd„Zdd„ZdS)ÚQOTDz. Return a quote of the day (RFC 865). cCs|j | ¡¡|j ¡dSr)r r ÚgetQuoteÚloseConnectionrrrrrFszQOTD.connectionMadecCsdS)zB Return a quote. May be overrriden in subclasses. s'An apple a day keeps the doctor away. rrrrrrKsz QOTD.getQuoteN)rrrrrrrrrrrAsrc@s eZdZdZdd„Zdd„ZdS)ÚWhoz/ Return list of active users (RFC 866) cCs|j | ¡¡|j ¡dSr)r r ÚgetUsersr rrrrrXszWho.connectionMadecCsdS)z> Return active users. Override in subclasses. sroot rrrrrr"]sz Who.getUsersN)rrrrrr"rrrrr!Ssr!c@seZdZdZdd„ZdS)ÚDaytimez8 Send back the daytime in ASCII form (RFC 867). cCs.|j t t t ¡¡¡d¡|j ¡dS)Ns )r r ÚtimeÚasctimeÚgmtimer rrrrrjs zDaytime.connectionMadeN©rrrrrrrrrr#esr#c@seZdZdZdd„ZdS)ÚTimez@ Send back the time in machine readable form (RFC 868). cCs.t dtt ¡ƒ¡}|j |¡|j ¡dS)Nz!i)ÚstructZpackÚintr$r r r )r Úresultrrrrus zTime.connectionMadeNr'rrrrr(psr()rZ __future__rrr$r)Zzope.interfacerZtwisted.internetrrZProtocolrrZ IProducerrrr!r#r(Ú__all__rrrrÚs