Ejemplo n.º 1
0
/*
    Takes care of reconnecting to the computer.
    
    int cookie: Cookie of the machine to reconnect to.
*/
static int __yard_net_reconnect(int cookie) {
  SOCKET soket = socket(AF_INET, SOCK_STREAM, 0);
  
  struct sockaddr_in * sin = make_sockaddr_in(yard_settings_by_cookie(cookie)->host, yard_settings_by_cookie(cookie)->port);
  
  connect(soket, (struct sockaddr *)sin, sizeof(struct sockaddr_in));
  
  connections[cookie] = soket;
}
Ejemplo n.º 2
0
void make_sockets(void)
{
  int i;
  for(i = 0; i < num_sockets; i++) {
    struct sockaddr_in sa;
    if((sockets[i] = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
      die("Could not create socket");
    make_sockaddr_in(socket_names[i*2], socket_names[i*2+1], &sa);
    if(bind(sockets[i], (struct sockaddr*)&sa, sizeof sa))
      die("Could not bind socket to address");
  }
  setuidgid(opt_uid, opt_gid);
}