- md5_init_ctx (&ctx);
- md5_process_bytes (a1buf, MD5_HASHLEN * 2, &ctx);
- md5_process_bytes (":", 1, &ctx);
- md5_process_bytes (nonce, strlen (nonce), &ctx);
- md5_process_bytes (":", 1, &ctx);
- md5_process_bytes (a2buf, MD5_HASHLEN * 2, &ctx);
- md5_finish_ctx (&ctx, hash);
+ MD5_INIT (&ctx);
+ MD5_UPDATE (a1buf, MD5_HASHLEN * 2, &ctx);
+ MD5_UPDATE (":", 1, &ctx);
+ MD5_UPDATE (nonce, strlen (nonce), &ctx);
+ MD5_UPDATE (":", 1, &ctx);
+ MD5_UPDATE (a2buf, MD5_HASHLEN * 2, &ctx);
+ MD5_FINISH (&ctx, hash);