Example #1
0
File: socket.c Project: dpw/molerat
static struct server_socket *unbound_server_socket(struct socket_factory *gf,
						   struct error *e)
{
	int fd;
	struct simple_server_socket *s;

	assert(gf->ops == &simple_socket_factory_ops);

	fd = make_listening_socket(AF_INET, SOCK_STREAM, e);
	if (fd < 0)
		return NULL;

	s = simple_server_socket_create(&fd, 1);
	return &s->base;
}
Example #2
0
int change_listen_socket(long *port, long new_port, int *server_socket)
{
  int ret = 0;

  if (*port == new_port)
    return SUCCESS;

  *port = new_port;
  ret = make_listening_socket(new_port);

  if (ret < 0)
    return ERROR;
  if (*server_socket)
    close(*server_socket);
  *server_socket = ret;
  return ret;
}