xref: /aosp_15_r20/external/mbedtls/programs/hash/hello.c (revision 62c56f9862f102b96d72393aff6076c951fb8148)
1*62c56f98SSadaf Ebrahimi /*
2*62c56f98SSadaf Ebrahimi  *  Classic "Hello, world" demonstration program
3*62c56f98SSadaf Ebrahimi  *
4*62c56f98SSadaf Ebrahimi  *  Copyright The Mbed TLS Contributors
5*62c56f98SSadaf Ebrahimi  *  SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
6*62c56f98SSadaf Ebrahimi  */
7*62c56f98SSadaf Ebrahimi 
8*62c56f98SSadaf Ebrahimi #include "mbedtls/build_info.h"
9*62c56f98SSadaf Ebrahimi 
10*62c56f98SSadaf Ebrahimi #include "mbedtls/platform.h"
11*62c56f98SSadaf Ebrahimi 
12*62c56f98SSadaf Ebrahimi #if defined(MBEDTLS_MD5_C)
13*62c56f98SSadaf Ebrahimi #include "mbedtls/md5.h"
14*62c56f98SSadaf Ebrahimi #endif
15*62c56f98SSadaf Ebrahimi 
16*62c56f98SSadaf Ebrahimi #if !defined(MBEDTLS_MD5_C)
main(void)17*62c56f98SSadaf Ebrahimi int main(void)
18*62c56f98SSadaf Ebrahimi {
19*62c56f98SSadaf Ebrahimi     mbedtls_printf("MBEDTLS_MD5_C not defined.\n");
20*62c56f98SSadaf Ebrahimi     mbedtls_exit(0);
21*62c56f98SSadaf Ebrahimi }
22*62c56f98SSadaf Ebrahimi #else
23*62c56f98SSadaf Ebrahimi 
24*62c56f98SSadaf Ebrahimi 
main(void)25*62c56f98SSadaf Ebrahimi int main(void)
26*62c56f98SSadaf Ebrahimi {
27*62c56f98SSadaf Ebrahimi     int i, ret;
28*62c56f98SSadaf Ebrahimi     unsigned char digest[16];
29*62c56f98SSadaf Ebrahimi     char str[] = "Hello, world!";
30*62c56f98SSadaf Ebrahimi 
31*62c56f98SSadaf Ebrahimi     mbedtls_printf("\n  MD5('%s') = ", str);
32*62c56f98SSadaf Ebrahimi 
33*62c56f98SSadaf Ebrahimi     if ((ret = mbedtls_md5((unsigned char *) str, 13, digest)) != 0) {
34*62c56f98SSadaf Ebrahimi         mbedtls_exit(MBEDTLS_EXIT_FAILURE);
35*62c56f98SSadaf Ebrahimi     }
36*62c56f98SSadaf Ebrahimi 
37*62c56f98SSadaf Ebrahimi     for (i = 0; i < 16; i++) {
38*62c56f98SSadaf Ebrahimi         mbedtls_printf("%02x", digest[i]);
39*62c56f98SSadaf Ebrahimi     }
40*62c56f98SSadaf Ebrahimi 
41*62c56f98SSadaf Ebrahimi     mbedtls_printf("\n\n");
42*62c56f98SSadaf Ebrahimi 
43*62c56f98SSadaf Ebrahimi     mbedtls_exit(MBEDTLS_EXIT_SUCCESS);
44*62c56f98SSadaf Ebrahimi }
45*62c56f98SSadaf Ebrahimi #endif /* MBEDTLS_MD5_C */
46