//TODO: check in mesh->socketsbitmap for a free descriptor and allocate a source port for this connection
 
+       int descriptor=-1;
+
+       for (int i=0; i < 1024 ;i++) {
+               if (mesh->socketsbitmap.bitValues[i].bit == 0) {
+                       mesh->socketsbitmap.bitValues[i].bit=1;
+                       descriptor=i;
+                       break;
+               }
+       }
+
+       if (descriptor == -1 ) return NULL;
+
 //TODO: register a callback for the data that will be received from this connection
 
 //TODO: return a description value that the user will use to write on this channel