Lines Matching defs:world

10 /* Our local types that specify our "world" */
33 * when moving the real-world to somewhere else, this might be replaced by
82 static int tunala_world_new_item(tunala_world_t *world, int fd,
84 static void tunala_world_del_item(tunala_world_t *world, unsigned int idx);
292 tunala_world_t world;
494 if((world.ssl_ctx = initialise_ssl_ctx(server_mode, engine_id,
503 if((world.listen_fd = ip_create_listener(listenhost)) == -1)
515 world.tunnels_used = world.tunnels_size = 0;
516 world.tunnels = NULL;
517 world.server_mode = server_mode;
518 selector_init(&world.selector);
523 if(world.tunnels_used < max_tunnels)
524 selector_add_listener(&world.selector, world.listen_fd);
526 for(loop = 0; loop < world.tunnels_used; loop++)
527 selector_add_tunala(&world.selector, world.tunnels + loop);
529 switch(selector_select(&world.selector)) {
545 if((world.tunnels_used < max_tunnels) && (selector_get_listener(
546 &world.selector, world.listen_fd,
549 if(!tunala_world_new_item(&world, newfd, proxy_ip,
554 "%d\n", world.tunnels_used);
560 t_item = world.tunnels;
561 while(loop < world.tunnels_used) {
562 if(!tunala_item_io(&world.selector, t_item)) {
585 tunala_world_del_item(&world, loop);
588 world.tunnels_used);
924 /* "Tunala" world stuff */
927 static int tunala_world_make_room(tunala_world_t *world)
932 if(world->tunnels_used < world->tunnels_size)
934 newsize = (world->tunnels_size == 0 ? 16 :
935 ((world->tunnels_size * 3) / 2));
939 if(world->tunnels_used > 0)
940 memcpy(newarray, world->tunnels,
941 world->tunnels_used * sizeof(tunala_item_t));
942 if(world->tunnels_size > 0)
943 free(world->tunnels);
945 world->tunnels = newarray;
946 world->tunnels_size = newsize;
950 static int tunala_world_new_item(tunala_world_t *world, int fd,
957 if(!tunala_world_make_room(world))
959 if((new_ssl = SSL_new(world->ssl_ctx)) == NULL) {
964 item = world->tunnels + (world->tunnels_used++);
974 if((world->server_mode && !flipped) ||
975 (!world->server_mode && flipped)) {
984 if(!state_machine_set_SSL(&item->sm, new_ssl, world->server_mode))
988 tunala_world_del_item(world, world->tunnels_used - 1);
993 static void tunala_world_del_item(tunala_world_t *world, unsigned int idx)
995 tunala_item_t *item = world->tunnels + idx;
1008 if(idx + 1 < world->tunnels_used)
1010 memmove(world->tunnels + idx,
1011 world->tunnels + (idx + 1),
1012 (world->tunnels_used - (idx + 1)) *
1014 world->tunnels_used--;