mirror of
https://github.com/waku-org/nwaku.git
synced 2025-02-21 03:18:32 +00:00
198 lines
14 KiB
C
198 lines
14 KiB
C
/* Generated by Nim Compiler v1.2.6 */
|
|
/* (c) 2020 Andreas Rumpf */
|
|
/* The generated code is subject to the original license. */
|
|
/* Compiled for: Linux, amd64, gcc */
|
|
/* Command for C compiler:
|
|
gcc -c -w -pthread -I/home/runner/work/nim-waku/nim-waku/vendor/nim-libbacktrace -I/home/runner/work/nim-waku/nim-waku/vendor/nim-libbacktrace/install/usr/include -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/csources/src -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/csources/inc -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/csources/tools -DBR_USE_UNIX_TIME=1 -DBR_USE_URANDOM=1 -DBR_LE_UNALIGNED=1 -DBR_64=1 -DBR_amd64=1 -DBR_INT128=1 -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/certs -I/home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp256k1_wrapper -I/home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp256k1_wrapper/secp256k1 -I/home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp256k1_wrapper/secp256k1/src -DHAVE_CONFIG_H -DHAVE_BUILTIN_EXPECT -march=native -g3 -Og -O3 -fno-strict-aliasing -fno-ident -I/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib -I/home/runner/work/nim-waku/nim-waku/waku/v2/node -o nimcache/release/quicksim2/@m..@s..@s..@svendor@snim-libp2p@slibp2p@scrypto@ssecp.nim.c.o nimcache/release/quicksim2/@m..@s..@s..@svendor@snim-libp2p@slibp2p@scrypto@ssecp.nim.c */
|
|
#define NIM_INTBITS 64
|
|
|
|
#include "nimbase.h"
|
|
#include <string.h>
|
|
#undef LANGUAGE_C
|
|
#undef MIPSEB
|
|
#undef MIPSEL
|
|
#undef PPC
|
|
#undef R3000
|
|
#undef R4000
|
|
#undef i386
|
|
#undef linux
|
|
#undef mips
|
|
#undef near
|
|
#undef far
|
|
#undef powerpc
|
|
#undef unix
|
|
#define nimfr_(x, y)
|
|
#define nimln_(x, y)
|
|
typedef struct tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA;
|
|
typedef struct tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA;
|
|
typedef struct tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ;
|
|
typedef struct tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ;
|
|
typedef struct NimStringDesc NimStringDesc;
|
|
typedef struct TGenericSeq TGenericSeq;
|
|
typedef struct tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w;
|
|
typedef struct tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg;
|
|
typedef struct tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA;
|
|
typedef struct tyObject_MDigest__law9ct65KplMYBvtmjCQxbw tyObject_MDigest__law9ct65KplMYBvtmjCQxbw;
|
|
typedef struct tyObject_Result__cqKviKPTEptuNJjCTlgYBQ tyObject_Result__cqKviKPTEptuNJjCTlgYBQ;
|
|
struct tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA {NIM_BOOL o;
|
|
union{
|
|
struct {NCSTRING e;
|
|
} _o_1;
|
|
};
|
|
};
|
|
typedef NU8 tyArray__w5VB8h5K8DB3oWrO5U2wqg[64];
|
|
struct tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ {tyArray__w5VB8h5K8DB3oWrO5U2wqg data;
|
|
};
|
|
struct tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA {tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ data;
|
|
};
|
|
struct tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ {NIM_BOOL o;
|
|
union{
|
|
struct {NCSTRING e;
|
|
} _o_1;
|
|
struct {tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA v;
|
|
} _o_2;
|
|
};
|
|
};
|
|
struct TGenericSeq {NI len;
|
|
NI reserved;
|
|
};
|
|
struct NimStringDesc { TGenericSeq Sup;NIM_CHAR data[SEQ_DECL_SIZE];
|
|
};
|
|
struct tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA {tyArray__w5VB8h5K8DB3oWrO5U2wqg data;
|
|
};
|
|
struct tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg {tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA data;
|
|
};
|
|
typedef NU8 tyArray__vEOa9c5qaE9ajWxR5R4zwfQg[32];
|
|
struct tyObject_MDigest__law9ct65KplMYBvtmjCQxbw {tyArray__vEOa9c5qaE9ajWxR5R4zwfQg data;
|
|
};
|
|
struct tyObject_Result__cqKviKPTEptuNJjCTlgYBQ {NIM_BOOL o;
|
|
union{
|
|
struct {NCSTRING e;
|
|
} _o_1;
|
|
struct {tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg v;
|
|
} _o_2;
|
|
};
|
|
};
|
|
struct tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w {tyArray__vEOa9c5qaE9ajWxR5R4zwfQg data;
|
|
};
|
|
static N_INLINE(void, nimZeroMem)(void* p, NI size);
|
|
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ, fromRaw__wuoqSv069a0hw79btLKQagEg)(NU8* data_0, NI data_0Len_0);
|
|
N_LIB_PRIVATE N_NOINLINE(void, chckNil)(void* p);
|
|
N_LIB_PRIVATE N_NOINLINE(void, raiseFieldError)(NimStringDesc* f);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA, toPublicKey__dZX6pG1PJuze9ctWTRA1ENw)(tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w* key_0);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_MDigest__law9ct65KplMYBvtmjCQxbw, digest__y0iFskTLLbZVCJoMR0aipg)(NU8* data_0, NI data_0Len_0);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg, sign__LWp0AcyBRS6BMzlr8xTI3g)(tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w* key_0, tyArray__vEOa9c5qaE9ajWxR5R4zwfQg msg);
|
|
N_LIB_PRIVATE N_NIMCALL(NI, toDer__oKZBatsMFAl9b7Nm8P8vmmA)(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg* sig, NU8* data_0, NI data_0Len_0);
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_Result__cqKviKPTEptuNJjCTlgYBQ, fromDer__IyTnjSYZ1ZkQrLj9bQIbslw)(NU8* data_0, NI data_0Len_0);
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, verify__2W2NV7Lox4sw9c7rNLNvOcw)(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg* sig, tyArray__vEOa9c5qaE9ajWxR5R4zwfQg msg, tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA* key_0);
|
|
STRING_LITERAL(TM__elUZfosX088YgpgYUbhUWA_2, "\'e\' is not accessible using discriminant \'o\' of type \'Result\'", 61);
|
|
STRING_LITERAL(TM__elUZfosX088YgpgYUbhUWA_3, "\'v\' is not accessible using discriminant \'o\' of type \'Result\'", 61);
|
|
|
|
#line 22 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
|
|
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size) { void* T1_;
|
|
#line 24 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
|
|
|
|
#line 24 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
|
|
T1_ = (void*)0; T1_ = memset(a, v, ((size_t) (size)));}
|
|
|
|
#line 33 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
|
|
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
|
|
#line 34 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
|
|
|
|
#line 34 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
|
|
nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory(p, ((int) 0), size);
|
|
}
|
|
|
|
#line 69 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA, init__VK9anPmPg8GD2pJILFR8EeQ)(tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA* key_0, NU8* data_0, NI data_0Len_0) { tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA result; tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ vX60gensym66980017_;{ nimZeroMem((void*)(&result), sizeof(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA));
|
|
#line 70 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 72 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 657 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
|
|
#line 72 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
vX60gensym66980017_ = fromRaw__wuoqSv069a0hw79btLKQagEg(data_0, data_0Len_0);
|
|
#line 658 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
{
|
|
#line 658 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
if (!!(vX60gensym66980017_.o)) goto LA3_;
|
|
|
|
#line 662 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
|
|
#line 662 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
chckNil((void*)(&result)); nimZeroMem((void*)(&result), sizeof(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA)); result.o = NIM_FALSE; if (!(((1 &(1U<<((NU)(vX60gensym66980017_.o)&7U)))!=0))){ raiseFieldError(((NimStringDesc*) &TM__elUZfosX088YgpgYUbhUWA_2)); } result._o_1.e = vX60gensym66980017_._o_1.e; goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
if (!(((2 &(1U<<((NU)(vX60gensym66980017_.o)&7U)))!=0))){ raiseFieldError(((NimStringDesc*) &TM__elUZfosX088YgpgYUbhUWA_3)); } (*key_0) = vX60gensym66980017_._o_2.v; chckNil((void*)(&result)); nimZeroMem((void*)(&result), sizeof(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA)); result.o = NIM_TRUE; }BeforeRet_: ;
|
|
return result;}
|
|
|
|
#line 144 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA, getKey__7VH9bAvjjfeIpx8OODXp0kw)(tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w* key_0) { tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA result; nimZeroMem((void*)(&result), sizeof(tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA));
|
|
#line 145 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 146 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 146 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
result = toPublicKey__dZX6pG1PJuze9ctWTRA1ENw(key_0); return result;}
|
|
|
|
#line 194 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg, sign__Jt5e1e9csSJNU0jboRIzhNA)(tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w* key_0, NU8* msg, NI msgLen_0) { tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg result; tyObject_MDigest__law9ct65KplMYBvtmjCQxbw h_1; nimZeroMem((void*)(&result), sizeof(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg));
|
|
#line 195 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 196 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 196 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
h_1 = digest__y0iFskTLLbZVCJoMR0aipg(msg, msgLen_0);
|
|
#line 197 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 197 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
result = sign__LWp0AcyBRS6BMzlr8xTI3g(key_0, h_1.data); return result;}
|
|
|
|
#line 172 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
N_LIB_PRIVATE N_NIMCALL(NI, toBytes__1NK8vJrh39b6JoXQBBDT8uQ)(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg* sig, NU8* data_0, NI data_0Len_0) { NI result; result = (NI)0;
|
|
#line 173 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 178 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 178 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
result = toDer__oKZBatsMFAl9b7Nm8P8vmmA(sig, data_0, data_0Len_0); return result;}
|
|
|
|
#line 81 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
N_LIB_PRIVATE N_NIMCALL(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA, init__IJ5bHaao1Z0BXchwyWOQvw)(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg* sig, NU8* data_0, NI data_0Len_0) { tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA result; tyObject_Result__cqKviKPTEptuNJjCTlgYBQ vX60gensym67065034_;{ nimZeroMem((void*)(&result), sizeof(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA));
|
|
#line 82 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 84 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 657 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
|
|
#line 84 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
vX60gensym67065034_ = fromDer__IyTnjSYZ1ZkQrLj9bQIbslw(data_0, data_0Len_0);
|
|
#line 658 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
{
|
|
#line 658 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
if (!!(vX60gensym67065034_.o)) goto LA3_;
|
|
|
|
#line 662 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
|
|
#line 662 "/home/runner/work/nim-waku/nim-waku/vendor/nim-stew/stew/results.nim"
|
|
chckNil((void*)(&result)); nimZeroMem((void*)(&result), sizeof(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA)); result.o = NIM_FALSE; if (!(((1 &(1U<<((NU)(vX60gensym67065034_.o)&7U)))!=0))){ raiseFieldError(((NimStringDesc*) &TM__elUZfosX088YgpgYUbhUWA_2)); } result._o_1.e = vX60gensym67065034_._o_1.e; goto BeforeRet_;
|
|
}
|
|
LA3_: ;
|
|
if (!(((2 &(1U<<((NU)(vX60gensym67065034_.o)&7U)))!=0))){ raiseFieldError(((NimStringDesc*) &TM__elUZfosX088YgpgYUbhUWA_3)); } (*sig) = vX60gensym67065034_._o_2.v; chckNil((void*)(&result)); nimZeroMem((void*)(&result), sizeof(tyObject_Result__mS1jHg9aTFgIUZQD9a9c2BMFA)); result.o = NIM_TRUE; }BeforeRet_: ;
|
|
return result;}
|
|
|
|
#line 199 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, verify__XezXbAB6sAtFe9av5pTAYrg)(tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg* sig, NU8* msg, NI msgLen_0, tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA* key_0) { NIM_BOOL result; tyObject_MDigest__law9ct65KplMYBvtmjCQxbw h_1; result = (NIM_BOOL)0;
|
|
#line 201 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 201 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 201 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
h_1 = digest__y0iFskTLLbZVCJoMR0aipg(msg, msgLen_0);
|
|
#line 202 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
|
|
#line 202 "/home/runner/work/nim-waku/nim-waku/vendor/nim-libp2p/libp2p/crypto/secp.nim"
|
|
result = verify__2W2NV7Lox4sw9c7rNLNvOcw(sig, h_1.data, key_0); return result;}
|