1
0
Fork 0
forked from fun/fun

More OpenSSL and documenation fun. No more words to say. (0.38.13)

This commit is contained in:
Johannes Findeisen 2026-02-19 14:05:14 +01:00
commit 38968a9a51
33 changed files with 498 additions and 88 deletions

16
src/vm/openssl/sha256.c Normal file
View file

@ -0,0 +1,16 @@
/**
* OpenSSL SHA-256 builtin
*/
case OP_OPENSSL_SHA256: {
Value vdata = pop_value(vm);
char *s = value_to_string_alloc(&vdata);
free_value(vdata);
if (!s) { push_value(vm, make_string("")); break; }
char *hex = fun_openssl_sha256_hex((const unsigned char*)s, strlen(s));
free(s);
if (!hex) { push_value(vm, make_string("")); break; }
Value out = make_string(hex);
free(hex);
push_value(vm, out);
break;
}

16
src/vm/openssl/sha512.c Normal file
View file

@ -0,0 +1,16 @@
/**
* OpenSSL SHA-512 builtin
*/
case OP_OPENSSL_SHA512: {
Value vdata = pop_value(vm);
char *s = value_to_string_alloc(&vdata);
free_value(vdata);
if (!s) { push_value(vm, make_string("")); break; }
char *hex = fun_openssl_sha512_hex((const unsigned char*)s, strlen(s));
free(s);
if (!hex) { push_value(vm, make_string("")); break; }
Value out = make_string(hex);
free(hex);
push_value(vm, out);
break;
}