Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. #include "tinypy.h"
  2. #include "net.c"
  3.  
  4. #define EXPORT(MOD_NAME, F_NAME, F_POINT) tp_set(tp, MOD_NAME , tp_string(F_NAME), tp_fnc(tp, F_POINT))
  5.  
  6. extern tp_obj tp_dict(TP);
  7. extern tp_obj tp_fnc(TP,tp_obj v(TP));
  8.  
  9. void socket_init(TP)
  10. {
  11.     tp_obj socket_mod = tp_dict(tp);
  12.     EXPORT(socket_mod, "socket"  , _socket);
  13.    
  14.     tp_set(tp, socket_mod, tp_string("AF_INET"), tp_number(AF_INET));
  15.     tp_set(tp, socket_mod, tp_string("AF_INET6"), tp_number(AF_INET6));
  16.     tp_set(tp, socket_mod, tp_string("AF_LOCAL"), tp_number(AF_LOCAL));
  17.     tp_set(tp, socket_mod, tp_string("AF_UNSPEC"), tp_number(AF_UNSPEC));
  18.    
  19.     tp_set(tp, socket_mod, tp_string("SOCK_STREAM"), tp_number(SOCK_STREAM));
  20.     tp_set(tp, socket_mod, tp_string("SOCK_DGRAM"), tp_number(SOCK_DGRAM));
  21.     tp_set(tp, socket_mod, tp_string("SOCK_RAW"), tp_number(SOCK_RAW));
  22.    
  23.     tp_set(tp, socket_mod, tp_string("IPPROTO_IP"), tp_number(IPPROTO_IP));
  24.     tp_set(tp, socket_mod, tp_string("IPPROTO_TCP"), tp_number(IPPROTO_TCP));
  25.     tp_set(tp, socket_mod, tp_string("IPPROTO_UDP"), tp_number(IPPROTO_UDP));
  26.     tp_set(tp, socket_mod, tp_string("IPPROTO_RAW"), tp_number(IPPROTO_RAW));
  27.     tp_set(tp, socket_mod, tp_string("IPPROTO_ICMP"), tp_number(IPPROTO_ICMP));
  28.    
  29.    
  30.     tp_set(tp, socket_mod, tp_string("__doc__"), tp_string("Working with network sockets"));
  31.     tp_set(tp, socket_mod, tp_string("__name__"), tp_string("Sockets"));
  32.     tp_set(tp, socket_mod, tp_string("__file__"), tp_string(__FILE__));
  33.     tp_set(tp, tp->modules, tp_string("socket"), socket_mod);
  34. }
  35.