X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=src%2Fdiscovery.c;fp=src%2Fdiscovery.c;h=323d22cfdf433438b51e44692132c46ca2455fb0;hb=ea20fcfcded669ce8fbbda3a1f93f354ed254603;hp=2af4702365e6b652c543bb9279371f12f19b83ad;hpb=ac63b6adaf29c4143f9e106039011b9ebeb96b93;p=meshlink diff --git a/src/discovery.c b/src/discovery.c index 2af47023..323d22cf 100644 --- a/src/discovery.c +++ b/src/discovery.c @@ -21,11 +21,11 @@ #define MESHLINK_MDNS_NAME_KEY "name" #define MESHLINK_MDNS_FINGERPRINT_KEY "fingerprint" -static void generate_rand_string(char *buffer, size_t size) { +static void generate_rand_string(meshlink_handle_t *mesh, char *buffer, size_t size) { assert(size); for(size_t i = 0; i < (size - 1); ++i) { - buffer[i] = 'a' + (rand() % ('z' - 'a' + 1)); + buffer[i] = 'a' + prng(mesh, 'z' - 'a' + 1); } buffer[size - 1] = '\0'; @@ -141,7 +141,7 @@ static void discovery_server_callback(CattaServer *server, CattaServerState stat case CATTA_SERVER_COLLISION: { /* A host name collision happened. Let's pick a new name for the server */ char hostname[17]; - generate_rand_string(hostname, sizeof(hostname)); + generate_rand_string(mesh, hostname, sizeof(hostname)); pthread_mutex_lock(&(mesh->mesh_mutex)); @@ -379,7 +379,7 @@ static void *discovery_loop(void *userdata) { // generate some unique host name (we actually do not care about it) char hostname[17]; - generate_rand_string(hostname, sizeof(hostname)); + generate_rand_string(mesh, hostname, sizeof(hostname)); // Let's set the host name for this server. CattaServerConfig config;