| Last change
 on this file since 392 was             2, checked in by Yuri Dario, 15 years ago | 
        
          | 
Initial import for vendor code.
 | 
        
          | 
              
Property                 svn:eol-style
 set to                 native | 
        
          | File size:
            739 bytes | 
      
      
| Line |  | 
|---|
| 1 | #! /usr/bin/env python | 
|---|
| 2 |  | 
|---|
| 3 | # Python implementation of an 'echo' tcp server: echo all data it receives. | 
|---|
| 4 | # | 
|---|
| 5 | # This is the simplest possible server, servicing a single request only. | 
|---|
| 6 |  | 
|---|
| 7 | import sys | 
|---|
| 8 | from socket import * | 
|---|
| 9 |  | 
|---|
| 10 | # The standard echo port isn't very useful, it requires root permissions! | 
|---|
| 11 | # ECHO_PORT = 7 | 
|---|
| 12 | ECHO_PORT = 50000 + 7 | 
|---|
| 13 | BUFSIZE = 1024 | 
|---|
| 14 |  | 
|---|
| 15 | def main(): | 
|---|
| 16 | if len(sys.argv) > 1: | 
|---|
| 17 | port = int(eval(sys.argv[1])) | 
|---|
| 18 | else: | 
|---|
| 19 | port = ECHO_PORT | 
|---|
| 20 | s = socket(AF_INET, SOCK_STREAM) | 
|---|
| 21 | s.bind(('', port)) | 
|---|
| 22 | s.listen(1) | 
|---|
| 23 | conn, (remotehost, remoteport) = s.accept() | 
|---|
| 24 | print 'connected by', remotehost, remoteport | 
|---|
| 25 | while 1: | 
|---|
| 26 | data = conn.recv(BUFSIZE) | 
|---|
| 27 | if not data: | 
|---|
| 28 | break | 
|---|
| 29 | conn.send(data) | 
|---|
| 30 |  | 
|---|
| 31 | main() | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.