uint8_t serverhash[16], secretbytes[16], hash[16];
memcpy(serverhash, r->key, sizeof(serverhash));
memset(r->key, 0, sizeof(r->key));
uint8_t serverhash[16], secretbytes[16], hash[16];
memcpy(serverhash, r->key, sizeof(serverhash));
memset(r->key, 0, sizeof(r->key));
- md5_init(&md5);
- md5_append(&md5, secretbytes, sizeof(secretbytes));
- md5_append(&md5, buf, len);
- md5_finish(&md5, hash);
+ md5_begin(&md5);
+ md5_hash(secretbytes, sizeof(secretbytes), &md5);
+ md5_hash(buf, len, &md5);
+ md5_end(hash, &md5);
- md5_init(&md5);
- md5_append(&md5, secretbytes, sizeof(secretbytes));
- md5_append(&md5, hash, 16);
- md5_finish(&md5, hash);
+ md5_begin(&md5);
+ md5_hash(secretbytes, sizeof(secretbytes), &md5);
+ md5_hash(hash, 16, &md5);
+ md5_end(hash, &md5);
rcauth_ok = !memcmp(hash, serverhash, sizeof(hash));
} else if (otype == DHCPV6_OPT_RECONF_MESSAGE && olen == 1) {
rcauth_ok = !memcmp(hash, serverhash, sizeof(hash));
} else if (otype == DHCPV6_OPT_RECONF_MESSAGE && olen == 1) {