Revision 918 trunk/code/projects/mapping/python/server.c

server.c (revision 918)
22 22
int main(int argc, char *argv[])
23 23
{
24 24
     char buffer[256];
25
     int tmp = 0;
25 26
     char outbuf[256];
26 27
     int n, newsockfd, len;
28
     short int tprint;
27 29
     Packet *received;
28

  
29
  
30 30
     if (argc < 2) {
31 31
	  fprintf(stderr,"usage: %s <port number>\n", argv[0]);
32 32
	  exit(1);
33 33
     }
34 34
     newsockfd = make_sock(atoi(argv[1]));
35

  
35
     printf("Made socket\n");
36 36
     make_listener();
37 37
     printf("Robot listener created.\n");
38 38

  
......
40 40

  
41 41
     while (1)
42 42
     {
43
	  bzero(buffer, 256);
43 44
	  wl_do();
44 45
	  
45
	  /* this is a completely useless queue, since wl_do only reads one packet at a time */
46 46
	  received = dequeue();
47
	  /* oh well */
48 47

  
49 48
	  if (received)
50 49
	  {
51
	       fprintf(stdout, "len: %d\n", buffer[1]);
52 50
	       buffer[0] = (char) received->source;
53
	       buffer[1] = (char) received->length-2;
51
	       buffer[1] = (char) received->length;
54 52
	       buffer[2] = (char) received->type;
55
	       memcpy(buffer+3, received->packet, received->length);
53
	       buffer[3] = 0;
54
	       memcpy(buffer+4, received->packet, received->length);
56 55
	       
57
	       n = write(newsockfd, buffer, 200);
56
	       memcpy(&tprint, buffer+4, 2);
57

  
58
	       printf("%d\n", tprint);
59
	       n = write(newsockfd, buffer, 22);
58 60
	       free(received);
59 61
	       bzero(buffer, 256);
60 62
	  }

Also available in: Unified diff