fix generate_transaction_id()

This commit is contained in:
Thomas Bernard 2018-07-06 15:29:15 +02:00
parent efe5d87103
commit d27a3152bd
1 changed files with 11 additions and 3 deletions

View File

@ -45,10 +45,18 @@ static int delete_filter_rule(const char * ifname, unsigned short port, int prot
/* Generate random STUN Transaction Id */ /* Generate random STUN Transaction Id */
static void generate_transaction_id(unsigned char transaction_id[12]) static void generate_transaction_id(unsigned char transaction_id[12])
{ {
int i; size_t i, n;
long value;
for (i = 0; i < 12; ++i) i = 0;
transaction_id[i] = random()%255; while (i < 12) {
value = random();
n = sizeof(value);
if (i + n > 12)
n = 12 - i;
memcpy(transaction_id + i, &value, n);
i += n;
}
} }
/* Create and fill STUN Binding Request */ /* Create and fill STUN Binding Request */