/* sets the tool to a eye dropper */ gint set_sample(void) { set_dropper(); utensil = CARMEN_MAP_EYEDROPPER; gtk_label_set_text(GTK_LABEL(tool_label), "eye dropper"); return 1; }
int main(int argc, char * argv[]) { if(argc < 3 || argc > 4) { print_usage(); } int i = 0; if(argc == 4) { if(strcmp(argv[1], "-d")) { print_usage(); } debug = 1; i = 1; } int portno = atoi(argv[++i]); set_dropper(atoi(argv[++i])); if((socket_descriptor = socket(AF_INET, SOCK_DGRAM, 0)) < 0) { fprintf(stderr, "Could not create socket.\n"); exit(2); } memset(&server, 0, sizeof(server)); server.sin_family = AF_INET; server.sin_addr.s_addr = INADDR_ANY; server.sin_port = htons(portno); init(); if(bind(socket_descriptor, (struct sockaddr *) &server, sizeof(server)) < 0) { fprintf(stderr, "Could not bind socket to port %d.\n", portno); exit(3); } if(debug) printf("Server started on port %d.\n", portno); serving = 0; max_in_size = 1024; in_buffer = (uchar *)malloc(max_in_size*sizeof(uchar)); src = &client; while(1) { if(!serving) { accept_connection(); } else if(!prepare_packet()) { if(write_read_data()) { printf("Error while receiving data. Terminating Connection"); finished = 0; serving = 0; free(out_buffer); continue; } process_read(); } } return 0; }