Networking Implementation


Document formatted by vherva at Fri Apr 24 11:23:45 1998 on the host schemestation. This document is produced by the SchemeStation project during the Tik-76.115 course.

  1. Introduction
  2. Addressing
  3. Communication between domains
  4. The functions of module networking
    1. File network-internal.h
      1. NetConnectionStatus net_acceptconnection (IN int fd, INOUT Connection **conn)
      2. NetConnectionStatus net_closeconnection (IN DomainAddress *addr, IN Bool closed)
      3. void net_connectcallbk (IN EventLoopIONotification notification, IN void *context)
      4. void net_delete_packets (PacketListNode *n)
      5. NetConnectionStatus net_doclienthandshake (INOUT Connection *conn)
      6. NetConnectionStatus net_doserverhandshake (INOUT Connection* conn)
      7. NetStatus net_dropconnection (IN Connection *connection)
      8. void net_eloop_callback (IN EventLoopIONotification notification, IN void *context)
      9. NetConnectionStatus net_findconnection (IN DomainAddress *addr, OUT Connection **connection)
      10. void net_get_tcpip_addr (IN DomainAddress *addr, OUT struct in_addr *ip, OUT unsigned short *port)
      11. NetStatus net_getconnection (IN DomainAddress *addr, OUT Connection **conn)
      12. NetStatus net_handlecontrol (IN Connection *connection)
      13. NetSndStatus net_makessppaddress (IN char* hostname, IN unsigned long ipaddr, IN unsigned short tcpport, OUT DomainAddress *addr)
      14. NetConnectionStatus net_newconnection (IN int fd, IN DomainAddress *address, INOUT Connection **)
      15. NetConnectionStatus net_openconnection (IN DomainAddress *addr, OUT Connection **connection)
      16. NetConnectionStatus net_protoconnection (IN int fd, OUT Connection **conn)
      17. void net_set_event_loop_reqs (Connection *connection)
      18. read (fd, buf, len)
      19. write (fd, buf, len)
    2. File network-packet.h
      1. void net_addresstoasc (char *str, int base, DomainAddress *addr)
      2. Bool net_cmpraddr (IN DomainAddress *a, IN DomainAddress *b)
      3. NetSndStatus net_deliverpacket (IN Packet *pckt, IN DomainAddress *addr)
      4. void net_destroypacket (Packet *packet)
      5. NetRcvStatus net_getrecpaddr (IN Packet *pckt, OUT DomainAddress *addr)
      6. void net_packettoasc (char *str, Packet *packet, Bool includedata, int maxlen)
      7. NetRcvStatus net_recvpacket (struct Connection *connection)
      8. NetSndStatus net_sendpacket (struct Connection *)
    3. File network.h
      1. NetStatus net_becomerouter (IN unsigned short tcp_port_to_listen)
      2. NetStatus net_get_info (OUT NetStatusInfo **ptr)
      3. NetStatus net_gethostaddress (OUT DomainAddress *addr)
      4. NetStatus net_initialize (void)
      5. NetConnectionStatus net_open_connection (IN char *hostname, IN unsigned long ipaddr, IN unsigned short tcpport)
      6. NetStatus net_registerpacketcallback (IN NetPacketCallback callback, IN void *context)
      7. NetStatus net_send (IN DomainAddress *addr, IN int size, IN uchar* data)
      8. NetStatus net_sethostaddress (IN DomainAddress *addr)
      9. NetStatus net_shutdown (INOUT void)
      10. NetStatus net_userouter (DomainAddress *address)
    4. File network-packet.h
      1. void net_addresstoasc (char *str, int base, DomainAddress *addr)
      2. Bool net_cmpraddr (IN DomainAddress *a, IN DomainAddress *b)
      3. NetSndStatus net_deliverpacket (IN Packet *pckt, IN DomainAddress *addr)
      4. void net_destroypacket (Packet *packet)
      5. NetRcvStatus net_getrecpaddr (IN Packet *pckt, OUT DomainAddress *addr)
      6. void net_packettoasc (char *str, Packet *packet, Bool includedata, int maxlen)
      7. NetRcvStatus net_recvpacket (struct Connection *connection)
      8. NetSndStatus net_sendpacket (struct Connection *)

© SchemeStation project 1997-1998 [Back to the document index]