Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Do not open the master socket too early, or the listener will get messages before...
[simgrid.git] / examples / gras / mutual_exclusion / simple_token / simple_token.c
index 2460b60..873dc0b 100644 (file)
@@ -129,27 +129,27 @@ int node (int argc,char *argv[]) {
   globals->tosuccessor = NULL;
 
   if (!gras_os_getpid() % 100)
-  INFO4("Launch node %ld (successor on %s:%d; listening on %d)",
+  INFO4("Launch node %d (successor on %s:%d; listening on %d)",
        gras_os_getpid(), host,peerport, myport);
 
-  /* 4. Create my master socket for listening */
+  /* 4. Register the known messages.  */
+  gras_msgtype_declare("stoken", gras_datadesc_by_name("int"));
+   
+  /* 5. Create my master socket for listening */
   globals->sock = gras_socket_server(myport);
   gras_os_sleep(1.0); /* Make sure all server sockets are created */
-
-  /* 5. Create socket to the successor on the ring */
+   
+  /* 6. Create socket to the successor on the ring */
   DEBUG2("Connect to my successor on %s:%d",host,peerport);
 
   globals->tosuccessor = gras_socket_client(host,peerport);
   
-  /* 6. Register the known messages.  */
-  gras_msgtype_declare("stoken", gras_datadesc_by_name("int"));
-   
   /* 7. Register my callback */
   gras_cb_register("stoken",&node_cb_stoken_handler);  
 
   /* 8. One node has to create the token at startup. 
         It's specified by a command line argument */
-  if (argc >= 5 && !strncmp("--create-token", argv[4],strlen(argv[4])))
+  if (argc >= 5 && !strncmp("--create-token", argv[4],strlen("--create-token")))
     globals->create=1;
 
   if (globals->create) {