March 16th, 2007 Kevin Niehage (coltishWARE) Definition of PortName Protocol (PNP) ------------------------------------- PNP allows a client to request valid port numbers via self-defined port names. Default Port: 15937 Commands: DISCONNECT DCON DC HELP H RETURN RET R RETURNLIST [] RETL [] RL [] Replies: 100 DONE 200 OK 300 TEMPORARY ERROR 400 PERMANENT ERROR 401 UNKNOWN COMMAND 402 UNKNOWN PORTNAME 500 INTERNAL ERROR Responses: . Communication Example: (C = Client ; S = Server) > Server listens on Port (e.g. 15937) > Client connects to Server C: RETURNLIST *FTP* S: 200 OK S: .1 TFTP1 S: .2 TFTP2 S: .3 FTP S: .4 ANONYMOUS-FTP S: 100 DONE C: RETURN ANON-FTP S: 200 OK S: 402 UNKNOWN PORTNAME C: RETURN ANONYMOUS-FTP S: 200 OK S: .1 21 ANONYMOUS-FTP S: 100 DONE C: RETURN *FTP* S: 200 OK S: .1 30 TFTP1 S: .2 31 TFTP2 S: .3 32 FTP S: .4 21 ANONYMOUS-FTP S: 100 DONE c: DISCONNECT S: 200 OK > Client disconnects from Server > Server closes connection [EOF]