2021-02-12 20:27:55 +00:00
/* 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:
2021-02-22 18:04:54 +00:00
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 - 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 - 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 - nat - traversal / vendor / miniupnp / miniupnpc - I / home / runner / work / nim - waku / nim - waku / vendor / nim - nat - traversal / vendor / libnatpmp - upstream - DENABLE_STRNATPMPERR - 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 / examples / v2 - o nimcache / release / chat2 / @ m . . @ s . . @ svendor @ snim - secp256k1 @ ssecp256k1 . nim . c . o nimcache / release / chat2 / @ m . . @ s . . @ svendor @ snim - secp256k1 @ ssecp256k1 . nim . c */
2021-02-12 20:27:55 +00:00
# define NIM_INTBITS 64
# include "nimbase.h"
# include <string.h>
# include <stdlib.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_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A ;
typedef struct tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ ;
typedef struct tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w ;
typedef struct TNimType TNimType ;
typedef struct TNimNode TNimNode ;
typedef struct tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA ;
typedef struct tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ ;
typedef struct NimStringDesc NimStringDesc ;
typedef struct TGenericSeq TGenericSeq ;
typedef struct tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ ;
typedef struct tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg ;
typedef struct tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA ;
typedef struct tyObject_Result__cqKviKPTEptuNJjCTlgYBQ tyObject_Result__cqKviKPTEptuNJjCTlgYBQ ;
typedef struct tyObject_SkKeyPair__11md6PDL9c3Ydro9bo69avH7g tyObject_SkKeyPair__11md6PDL9c3Ydro9bo69avH7g ;
typedef struct tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw ;
2021-02-22 18:04:54 +00:00
typedef struct tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA ;
typedef struct tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w ;
2021-02-12 20:27:55 +00:00
struct tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A { tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * context ;
} ;
typedef NU8 tyArray__vEOa9c5qaE9ajWxR5R4zwfQg [ 32 ] ;
struct tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w { tyArray__vEOa9c5qaE9ajWxR5R4zwfQg data ;
} ;
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A ;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ ;
typedef N_NIMCALL_PTR ( void , tyProc__ojoeKfW4VYIm36I9cpDTQIg ) ( void * p , NI op ) ;
typedef N_NIMCALL_PTR ( void * , tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ ) ( void * p ) ;
struct TNimType { NI size ;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind ;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags ;
TNimType * base ;
TNimNode * node ;
void * finalizer ;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker ;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy ;
NCSTRING name ;
TNimType * nextType ;
NI instances ;
NI sizes ;
} ;
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ ;
struct TNimNode { tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind ;
NI offset ;
TNimType * typ ;
NCSTRING name ;
NI len ;
TNimNode * * sons ;
} ;
typedef NU8 tyArray__w5VB8h5K8DB3oWrO5U2wqg [ 64 ] ;
struct tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ { tyArray__w5VB8h5K8DB3oWrO5U2wqg data ;
} ;
struct tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA { tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ data ;
} ;
typedef NU8 tyArray__1S3PkXs1i9a3odYVGYxTIlQ [ 33 ] ;
struct TGenericSeq { NI len ;
NI reserved ;
} ;
struct NimStringDesc { TGenericSeq Sup ; NIM_CHAR data [ SEQ_DECL_SIZE ] ;
} ;
struct tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ { NIM_BOOL o ;
union {
struct { NCSTRING e ;
} _o_1 ;
struct { tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA v ;
} _o_2 ;
} ;
} ;
struct tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ { char dummy ;
} ;
typedef N_CDECL_PTR ( void , tyProc__aYhtua0pUdy77mJUJg19ceg ) ( NCSTRING message , void * data_0 ) ;
typedef NimStringDesc * tyArray__nHXaesL0DJZHyVS07ARPRA [ 1 ] ;
struct tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA { tyArray__w5VB8h5K8DB3oWrO5U2wqg data ;
} ;
struct tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg { tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA data ;
} ;
typedef N_CDECL_PTR ( int , tyProc__gZv9cNjZk34ctaQVDPYTI5A ) ( unsigned char * nonce32 , unsigned char * msg32 , unsigned char * key32 , unsigned char * algo16 , void * data , unsigned int attempt ) ;
typedef NU8 tyArray__JmtzaGPqh6ulXN2kVElCqA [ 72 ] ;
struct tyObject_Result__cqKviKPTEptuNJjCTlgYBQ { NIM_BOOL o ;
union {
struct { NCSTRING e ;
} _o_1 ;
struct { tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg v ;
} _o_2 ;
} ;
} ;
struct tyObject_SkKeyPair__11md6PDL9c3Ydro9bo69avH7g { tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w seckey ;
tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA pubkey ;
} ;
struct tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw { NIM_BOOL o ;
union {
struct { NCSTRING e ;
} _o_1 ;
struct { tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w v ;
} _o_2 ;
} ;
} ;
typedef struct {
N_NIMCALL_PTR ( void , ClP_0 ) ( NU8 * data_0 , NI data_0Len_0 , void * ClE_0 ) ;
void * ClE_0 ;
} tyProc__2eQPaS8XIidfzb11dDC4nw ;
typedef N_CLOSURE_PTR ( void , TM__Vf3HUZLUfnMxxqD8A7j0JA_7 ) ( NU8 * data_0 , NI data_0Len_0 ) ;
typedef NU8 tyArray__DqM3b17bbm0d9bCZr9c2fLDQ [ 65 ] ;
2021-02-22 18:04:54 +00:00
struct tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w { tyArray__DqM3b17bbm0d9bCZr9c2fLDQ data ;
} ;
struct tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA { tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w data ;
} ;
2021-02-12 20:27:55 +00:00
N_LIB_PRIVATE N_NOINLINE ( void , chckNil ) ( void * p ) ;
static N_INLINE ( void , nimZeroMem ) ( void * p , NI size ) ;
static N_INLINE ( void , nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory ) ( void * a , int v , NI size ) ;
N_CDECL ( int , secp256k1_ec_pubkey_serialize ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , unsigned char * output , size_t * outputlen , tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ * pubkey , unsigned int flags_0 ) ;
N_LIB_PRIVATE N_NIMCALL ( void , failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ) ( NimStringDesc * msg ) ;
N_LIB_PRIVATE N_NOINLINE ( void , raiseIndexError2 ) ( NI i , NI n ) ;
N_CDECL ( int , secp256k1_ec_pubkey_parse ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ * pubkey , unsigned char * input , size_t inputlen ) ;
N_CDECL ( int , secp256k1_ec_pubkey_create ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ * pubkey , unsigned char * seckey ) ;
N_LIB_PRIVATE N_NIMCALL ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * , getContext__DnBbOJLwooKySk8h6Wtl4A ) ( void ) ;
N_LIB_PRIVATE N_NIMCALL ( tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A , init__LPyUJJkeYePP8BW010musQ ) ( void ) ;
N_CDECL ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * , secp256k1_context_create ) ( unsigned int flags_0 ) ;
N_CDECL ( void , secp256k1_context_set_illegal_callback ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyProc__aYhtua0pUdy77mJUJg19ceg fun , void * data_0 ) ;
N_LIB_PRIVATE N_CDECL ( void , illegalCallback__vqcdLT2OUpjzQXAWYFzlPQ ) ( NCSTRING message , void * data_0 ) ;
N_LIB_PRIVATE N_NIMCALL ( NimStringDesc * , cstrToNimstr ) ( NCSTRING str ) ;
N_LIB_PRIVATE N_NIMCALL ( void , echoBinSafe ) ( NimStringDesc * * args , NI argsLen_0 ) ;
N_LIB_PRIVATE N_NIMCALL ( NimStringDesc * , getStackTrace__wZiNbtaUL82bHwwHPZjV9cQ ) ( void ) ;
N_CDECL ( void , secp256k1_context_set_error_callback ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyProc__aYhtua0pUdy77mJUJg19ceg fun , void * data_0 ) ;
N_LIB_PRIVATE N_CDECL ( void , errorCallback__vqcdLT2OUpjzQXAWYFzlPQ_2 ) ( NCSTRING message , void * data_0 ) ;
N_CDECL ( int , secp256k1_ecdsa_sign ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA * sig , unsigned char * msg32 , unsigned char * seckey , tyProc__gZv9cNjZk34ctaQVDPYTI5A noncefp , void * ndata ) ;
N_CDECL ( int , secp256k1_ecdsa_signature_serialize_der ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , unsigned char * output , size_t * outputlen , tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA * sig ) ;
N_LIB_PRIVATE N_NOINLINE ( void , raiseRangeErrorI ) ( NI64 i , NI64 a , NI64 b ) ;
static N_INLINE ( void , copyMem__i80o3k0SgEI5gTRCzYdyWAsystem ) ( void * dest , void * source , NI size ) ;
static N_INLINE ( void , nimCopyMem ) ( void * dest , void * source , NI size ) ;
N_CDECL ( int , secp256k1_ecdsa_signature_parse_der ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA * sig , unsigned char * input , size_t inputlen ) ;
N_CDECL ( int , secp256k1_ecdsa_verify ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA * sig , unsigned char * msg32 , tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ * pubkey ) ;
N_CDECL ( int , secp256k1_ec_seckey_verify ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , unsigned char * seckey ) ;
N_LIB_PRIVATE N_NIMCALL ( void , toArray__4YEAz4XCqEsEBwgcwy5WUw ) ( NU8 * data_0 , NI data_0Len_0 , tyArray__vEOa9c5qaE9ajWxR5R4zwfQg Result ) ;
N_LIB_PRIVATE N_NOINLINE ( void , raiseIndexError ) ( void ) ;
N_LIB_PRIVATE N_NOINLINE ( void , raiseOverflow ) ( void ) ;
N_LIB_PRIVATE N_NOINLINE ( void , raiseAssert__gpGJG5CoQzE64skFd9bPG7A ) ( NimStringDesc * msg ) __attribute__ ( ( noreturn ) ) ;
2021-02-22 18:04:54 +00:00
N_CDECL ( int , secp256k1_ecdsa_sign_recoverable ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w * sig , unsigned char * msg32 , unsigned char * seckey , tyProc__gZv9cNjZk34ctaQVDPYTI5A noncefp , void * ndata ) ;
N_CDECL ( int , secp256k1_ecdsa_recoverable_signature_serialize_compact ) ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ctx , unsigned char * output64 , int * recid , tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w * sig ) ;
2021-02-12 20:27:55 +00:00
N_LIB_PRIVATE N_NIMCALL ( NIM_BOOL , isEqual__WxQYJ8fOGBPO2T0Kv9aJaEA ) ( NU8 * a , NI aLen_0 , NU8 * b , NI bLen_0 ) ;
N_LIB_PRIVATE N_NIMCALL ( void , toRaw__bCgy0bI8LIRIvVpAjgBPMg ) ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA * pubkey , tyArray__DqM3b17bbm0d9bCZr9c2fLDQ Result ) ;
N_LIB_PRIVATE TNimType NTI__aKiBFtqo69b60sWLnM5A9c3w_ ;
extern TNimType NTI__k3HXouOuhqAKq0dx450lXQ_ ;
N_LIB_PRIVATE TNimType NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ ;
N_LIB_PRIVATE TNimType NTI__YxxaGK7KOKaWCOaZ44rHMA_ ;
extern TNimType NTI__GYc9aFo1e2qOLdmAqUvIikQ_ ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_2 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(303, 12) `res == 1` Can \' t fail, per documentation " , 120 ) ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_3 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(255, 12) `res == 1` Valid private keys should always hav "
" e a corresponding pub " , 148 ) ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_4 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(434, 12) `res == 1` cannot create signature, key invalid "
" \ ? " , 128 ) ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_5 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(355, 12) `res == 1` Can \' t fail, per documentation " , 120 ) ;
N_LIB_PRIVATE TNimType NTI__11md6PDL9c3Ydro9bo69avH7g_ ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_9 , " RNG not giving random enough bytes, can \' t create valid key " , 58 ) ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_10 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(292, 12) `res == 1` Can \' t fail, per documentation " , 120 ) ;
2021-02-22 18:04:54 +00:00
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_11 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(442, 12) `res == 1` cannot create recoverable signature, "
" key invalid \ ? " , 140 ) ;
STRING_LITERAL ( TM__Vf3HUZLUfnMxxqD8A7j0JA_12 , " /home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp25 "
" 6k1.nim(392, 12) `res == 1` can \' t fail, per documentation " , 120 ) ;
2021-02-12 20:27:55 +00:00
N_LIB_PRIVATE NIM_THREADVAR tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A secpContext__T39b9cmVSHCO632lALSOJ29aw ;
extern TNimType * nimTypeRoot ;
extern tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * secp256k1_context_no_precomp ;
# 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 297 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( void , toRawCompressed__NtS562jLQhl9aFXEELIlWEw ) ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA * pubkey , tyArray__1S3PkXs1i9a3odYVGYxTIlQ Result ) { size_t length ; int res ; chckNil ( ( void * ) Result ) ; nimZeroMem ( ( void * ) Result , sizeof ( tyArray__1S3PkXs1i9a3odYVGYxTIlQ ) ) ;
# line 299 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
length = ( ( size_t ) 33 ) ;
# line 300 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 300 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ec_pubkey_serialize ( secp256k1_context_no_precomp , ( ( unsigned char * ) ( ( & Result [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( & length ) , ( & ( * pubkey ) . data ) , ( ( unsigned int ) 258 ) ) ;
# line 303 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 303 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 303 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA3_ ;
# line 303 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 303 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_2 ) ) ;
}
LA3_ : ;
}
# line 259 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ , fromRaw__wuoqSv069a0hw79btLKQagEg ) ( NU8 * data_0 , NI data_0Len_0 ) { tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ result ; NI length ; tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ key_1 ; { nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ ) ) ;
# line 260 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 262 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 262 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 262 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ( data_0Len_0 < ( ( NI ) 33 ) ) ) goto LA3_ ;
# line 263 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 263 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: public key must be 33 or 33 bytes " ; goto BeforeRet_ ;
}
LA3_ : ;
length = ( NI ) 0 ;
# line 267 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{ NIM_BOOL T7_ ;
# line 267 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T7_ = ( NIM_BOOL ) 0 ;
# line 267 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; } T7_ = ( data_0 [ ( ( NI ) 0 ) ] = = ( ( NU8 ) 2 ) ) ; if ( T7_ ) goto LA8_ ;
# line 267 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; } T7_ = ( data_0 [ ( ( NI ) 0 ) ] = = ( ( NU8 ) 3 ) ) ; LA8_ : ;
if ( ! T7_ ) goto LA9_ ;
# line 268 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 268 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 268 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
length = ( ( data_0Len_0 < = ( ( NI ) 33 ) ) ? data_0Len_0 : ( ( NI ) 33 ) ) ; }
goto LA5_ ;
LA9_ : ;
{ NIM_BOOL T12_ ; NIM_BOOL T13_ ;
# line 269 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T12_ = ( NIM_BOOL ) 0 ;
# line 269 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T13_ = ( NIM_BOOL ) 0 ;
# line 269 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; } T13_ = ( data_0 [ ( ( NI ) 0 ) ] = = ( ( NU8 ) 4 ) ) ; if ( T13_ ) goto LA14_ ;
# line 269 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; } T13_ = ( data_0 [ ( ( NI ) 0 ) ] = = ( ( NU8 ) 6 ) ) ; LA14_ : ;
T12_ = T13_ ; if ( T12_ ) goto LA15_ ;
# line 269 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; } T12_ = ( data_0 [ ( ( NI ) 0 ) ] = = ( ( NU8 ) 7 ) ) ; LA15_ : ;
if ( ! T12_ ) goto LA16_ ;
# line 270 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 270 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 270 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
length = ( ( data_0Len_0 < = ( ( NI ) 65 ) ) ? data_0Len_0 : ( ( NI ) 65 ) ) ; }
goto LA5_ ;
LA16_ : ;
{
# line 272 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 272 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: public key format not recognised " ; goto BeforeRet_ ;
}
LA5_ : ;
# line 275 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{ int T21_ ;
# line 276 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 276 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 275 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; }
# line 275 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T21_ = ( int ) 0 ; T21_ = secp256k1_ec_pubkey_parse ( secp256k1_context_no_precomp , ( & key_1 ) , ( ( unsigned char * ) ( ( & data_0 [ ( ( NI ) 0 ) ] ) ) ) , ( ( size_t ) ( length ) ) ) ; if ( ! ! ( ( T21_ = = ( ( NI32 ) 1 ) ) ) ) goto LA22_ ;
# line 277 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 277 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: cannot parse public key " ; goto BeforeRet_ ;
}
LA22_ : ;
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__ac12d9bB2oPDNrhZXEa1pxQ ) ) ; result . o = NIM_TRUE ; chckNil ( ( void * ) ( & result . _o_2 . v ) ) ; nimZeroMem ( ( void * ) ( & result . _o_2 . v ) , sizeof ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA ) ) ; result . _o_2 . v . data = key_1 ; } BeforeRet_ : ;
return result ; }
# line 116 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_CDECL ( void , illegalCallback__vqcdLT2OUpjzQXAWYFzlPQ ) ( NCSTRING message , void * data_0 ) { tyArray__nHXaesL0DJZHyVS07ARPRA T1_ ; tyArray__nHXaesL0DJZHyVS07ARPRA T2_ ;
# line 119 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
nimZeroMem ( ( void * ) T1_ , sizeof ( tyArray__nHXaesL0DJZHyVS07ARPRA ) ) ;
# line 119 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T1_ [ 0 ] = cstrToNimstr ( message ) ; echoBinSafe ( T1_ , 1 ) ;
# line 120 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
nimZeroMem ( ( void * ) T2_ , sizeof ( tyArray__nHXaesL0DJZHyVS07ARPRA ) ) ;
# line 120 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 120 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T2_ [ 0 ] = getStackTrace__wZiNbtaUL82bHwwHPZjV9cQ ( ) ; echoBinSafe ( T2_ , 1 ) ;
# line 121 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 121 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
exit ( ( ( NI ) 1 ) ) ;
}
# line 123 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_CDECL ( void , errorCallback__vqcdLT2OUpjzQXAWYFzlPQ_2 ) ( NCSTRING message , void * data_0 ) { tyArray__nHXaesL0DJZHyVS07ARPRA T1_ ; tyArray__nHXaesL0DJZHyVS07ARPRA T2_ ;
# line 125 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
nimZeroMem ( ( void * ) T1_ , sizeof ( tyArray__nHXaesL0DJZHyVS07ARPRA ) ) ;
# line 125 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T1_ [ 0 ] = cstrToNimstr ( message ) ; echoBinSafe ( T1_ , 1 ) ;
# line 126 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
nimZeroMem ( ( void * ) T2_ , sizeof ( tyArray__nHXaesL0DJZHyVS07ARPRA ) ) ;
# line 126 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 126 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T2_ [ 0 ] = getStackTrace__wZiNbtaUL82bHwwHPZjV9cQ ( ) ; echoBinSafe ( T2_ , 1 ) ;
# line 127 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 127 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
exit ( ( ( NI ) 1 ) ) ;
}
# line 140 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A , init__LPyUJJkeYePP8BW010musQ ) ( void ) { tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A result ; unsigned int flags_1 ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkContext__g9c9bUdtZF9bfUAdx1W2ZZz0A ) ) ;
# line 150 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
flags_1 = ( ( unsigned int ) 769 ) ;
# line 151 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 151 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
result . context = secp256k1_context_create ( flags_1 ) ;
# line 152 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 152 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
secp256k1_context_set_illegal_callback ( result . context , illegalCallback__vqcdLT2OUpjzQXAWYFzlPQ , NIM_NIL ) ;
# line 154 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 154 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
secp256k1_context_set_error_callback ( result . context , errorCallback__vqcdLT2OUpjzQXAWYFzlPQ_2 , NIM_NIL ) ;
return result ; }
# line 157 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * , getContext__DnBbOJLwooKySk8h6Wtl4A ) ( void ) { tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * result ; result = ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ) 0 ;
# line 158 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 166 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 166 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ( secpContext__T39b9cmVSHCO632lALSOJ29aw . context = = 0 ) ) goto LA3_ ;
# line 167 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 167 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
secpContext__T39b9cmVSHCO632lALSOJ29aw = init__LPyUJJkeYePP8BW010musQ ( ) ; }
LA3_ : ;
result = secpContext__T39b9cmVSHCO632lALSOJ29aw . context ; return result ; }
# line 250 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA , toPublicKey__dZX6pG1PJuze9ctWTRA1ENw ) ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w * key_0 ) { tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA result ; tyObject_secp256k1_pubkey__GYc9aFo1e2qOLdmAqUvIikQ pubkey ; int res ; tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * T1_ ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA ) ) ;
# line 251 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 253 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 254 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 254 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T1_ = ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ) 0 ; T1_ = getContext__DnBbOJLwooKySk8h6Wtl4A ( ) ;
# line 253 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ec_pubkey_create ( T1_ , ( & pubkey ) , ( ( unsigned char * ) ( ( & ( * key_0 ) . data [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) ) ;
# line 255 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 255 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 255 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA4_ ;
# line 255 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 255 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_3 ) ) ;
}
LA4_ : ;
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA ) ) ; result . data = pubkey ; return result ; }
# line 427 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg , sign__LWp0AcyBRS6BMzlr8xTI3g ) ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w * key_0 , tyArray__vEOa9c5qaE9ajWxR5R4zwfQg msg ) { tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg result ; tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA data_1 ; int res ; tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * T1_ ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg ) ) ;
# line 428 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 432 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 433 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 433 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T1_ = ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ) 0 ; T1_ = getContext__DnBbOJLwooKySk8h6Wtl4A ( ) ;
# line 432 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ecdsa_sign ( T1_ , ( & data_1 ) , ( ( unsigned char * ) ( ( & msg [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( ( unsigned char * ) ( ( & ( * key_0 ) . data [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , NIM_NIL , NIM_NIL ) ;
# line 434 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 434 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 434 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA4_ ;
# line 434 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 434 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_4 ) ) ;
}
LA4_ : ;
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg ) ) ; result . data = data_1 ; return result ; }
# line 11 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / memory.nim"
static N_INLINE ( void , nimCopyMem ) ( void * dest , void * source , NI size ) { void * T1_ ;
# line 13 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / memory.nim"
# line 13 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / memory.nim"
T1_ = ( void * ) 0 ; T1_ = memcpy ( dest , source , ( ( size_t ) ( size ) ) ) ; }
# line 2112 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system.nim"
static N_INLINE ( void , copyMem__i80o3k0SgEI5gTRCzYdyWAsystem ) ( void * dest , void * source , NI size ) {
# line 2113 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system.nim"
# line 2113 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system.nim"
nimCopyMem ( dest , source , size ) ;
}
# line 344 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( NI , toDer__oKZBatsMFAl9b7Nm8P8vmmA ) ( tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg * sig , NU8 * data_0 , NI data_0Len_0 ) { NI result ; tyArray__JmtzaGPqh6ulXN2kVElCqA buffer ; size_t plength ; int res ; result = ( NI ) 0 ; nimZeroMem ( ( void * ) buffer , sizeof ( tyArray__JmtzaGPqh6ulXN2kVElCqA ) ) ;
# line 351 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
plength = ( ( size_t ) 72 ) ;
# line 352 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 352 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ecdsa_signature_serialize_der ( secp256k1_context_no_precomp , ( ( unsigned char * ) ( ( & buffer [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( & plength ) , ( & ( * sig ) . data ) ) ;
# line 355 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 355 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 355 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA3_ ;
# line 355 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 355 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_5 ) ) ;
}
LA3_ : ;
# line 356 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NI64 ) ( plength ) < ( ( NI ) ( IL64 ( - 9223372036854775807 ) - IL64 ( 1 ) ) ) | | ( NI64 ) ( plength ) > ( ( NI ) IL64 ( 9223372036854775807 ) ) ) { raiseRangeErrorI ( plength , ( ( NI ) ( IL64 ( - 9223372036854775807 ) - IL64 ( 1 ) ) ) , ( ( NI ) IL64 ( 9223372036854775807 ) ) ) ; } result = ( ( NI ) ( plength ) ) ;
# line 357 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 357 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 357 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ( result < = data_0Len_0 ) ) goto LA7_ ;
# line 358 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; } if ( ( result ) < ( ( NI ) 0 ) | | ( result ) > ( ( NI ) IL64 ( 9223372036854775807 ) ) ) { raiseRangeErrorI ( result , ( ( NI ) 0 ) , ( ( NI ) IL64 ( 9223372036854775807 ) ) ) ; }
# line 358 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
copyMem__i80o3k0SgEI5gTRCzYdyWAsystem ( ( ( void * ) ( ( & data_0 [ ( ( NI ) 0 ) ] ) ) ) , ( ( void * ) ( ( & buffer [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( ( NI ) ( result ) ) ) ;
}
LA7_ : ;
return result ; }
# line 320 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_Result__cqKviKPTEptuNJjCTlgYBQ , fromDer__IyTnjSYZ1ZkQrLj9bQIbslw ) ( NU8 * data_0 , NI data_0Len_0 ) { tyObject_Result__cqKviKPTEptuNJjCTlgYBQ result ; tyObject_secp256k1_ecdsa_signature__9abCoFG0e9awROn9bWeoOX9aEA sig ; { nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__cqKviKPTEptuNJjCTlgYBQ ) ) ;
# line 321 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 323 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 323 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 323 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ( data_0Len_0 < ( ( NI ) 1 ) ) ) goto LA3_ ;
# line 324 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 324 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__cqKviKPTEptuNJjCTlgYBQ ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: DER signature too short " ; goto BeforeRet_ ;
}
LA3_ : ;
# line 327 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{ int T7_ ;
# line 328 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 328 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 327 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; }
# line 328 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 327 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T7_ = ( int ) 0 ; T7_ = secp256k1_ecdsa_signature_parse_der ( secp256k1_context_no_precomp , ( & sig ) , ( ( unsigned char * ) ( ( & data_0 [ ( ( NI ) 0 ) ] ) ) ) , ( ( size_t ) ( data_0Len_0 ) ) ) ; if ( ! ! ( ( T7_ = = ( ( NI32 ) 1 ) ) ) ) goto LA8_ ;
# line 329 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 329 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__cqKviKPTEptuNJjCTlgYBQ ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: cannot parse DER signature " ; goto BeforeRet_ ;
}
LA8_ : ;
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__cqKviKPTEptuNJjCTlgYBQ ) ) ; result . o = NIM_TRUE ; chckNil ( ( void * ) ( & result . _o_2 . v ) ) ; nimZeroMem ( ( void * ) ( & result . _o_2 . v ) , sizeof ( tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg ) ) ; result . _o_2 . v . data = sig ; } BeforeRet_ : ;
return result ; }
# line 445 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( NIM_BOOL , verify__2W2NV7Lox4sw9c7rNLNvOcw ) ( tyObject_SkSignature__zIGR7WXU5PgL069bIs2HRIg * sig , tyArray__vEOa9c5qaE9ajWxR5R4zwfQg msg , tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA * key_0 ) { NIM_BOOL result ; tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * T1_ ; int T2_ ; result = ( NIM_BOOL ) 0 ;
# line 447 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 447 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 446 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 447 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 447 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T1_ = ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ) 0 ; T1_ = getContext__DnBbOJLwooKySk8h6Wtl4A ( ) ;
# line 446 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T2_ = ( int ) 0 ; T2_ = secp256k1_ecdsa_verify ( T1_ , ( & ( * sig ) . data ) , ( ( unsigned char * ) ( ( & msg [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( & ( * key_0 ) . data ) ) ; result = ( T2_ = = ( ( NI32 ) 1 ) ) ; return result ; }
# line 228 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw , fromRaw__nFXLVvDSqgy9cuKCCRzv4jg ) ( NU8 * data_0 , NI data_0Len_0 ) { tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw result ; { nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw ) ) ;
# line 229 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 230 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 230 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 230 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ( data_0Len_0 < ( ( NI ) 32 ) ) ) goto LA3_ ;
# line 231 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 231 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: raw private key should be 32 bytes " ; goto BeforeRet_ ;
}
LA3_ : ;
# line 233 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{ int T7_ ;
# line 233 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 233 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 233 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) ) { raiseIndexError2 ( ( ( NI ) 0 ) , data_0Len_0 - 1 ) ; }
# line 233 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T7_ = ( int ) 0 ; T7_ = secp256k1_ec_seckey_verify ( secp256k1_context_no_precomp , ( ( unsigned char * ) ( ( & data_0 [ ( ( NI ) 0 ) ] ) ) ) ) ; if ( ! ! ( ( T7_ = = ( ( NI32 ) 1 ) ) ) ) goto LA8_ ;
# line 234 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 234 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw ) ) ; result . o = NIM_FALSE ; result . _o_1 . e = " secp: invalid private key " ; goto BeforeRet_ ;
}
LA8_ : ;
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_Result__Ya9ccZBmFvHJBBkgW6aNwdw ) ) ; result . o = NIM_TRUE ; chckNil ( ( void * ) ( & result . _o_2 . v ) ) ; nimZeroMem ( ( void * ) ( & result . _o_2 . v ) , sizeof ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w ) ) ;
# line 236 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ( ( NI ) 31 ) - ( ( NI ) 0 ) ! = - 1 & & ( ( NU ) ( ( ( NI ) 0 ) ) > = ( NU ) ( data_0Len_0 ) | | ( NU ) ( ( ( NI ) 31 ) ) > = ( NU ) ( data_0Len_0 ) ) ) { raiseIndexError ( ) ; }
# line 236 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
toArray__4YEAz4XCqEsEBwgcwy5WUw ( ( NU8 * ) ( data_0 ) + ( ( ( NI ) 0 ) ) , ( ( ( NI ) 31 ) ) - ( ( ( NI ) 0 ) ) + 1 , result . _o_2 . v . data ) ;
} BeforeRet_ : ;
return result ; }
# line 204 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w , random__0zyuItkuaHgarDWONXkbnQ ) ( tyProc__2eQPaS8XIidfzb11dDC4nw rng_0 ) { tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w result ; tyArray__vEOa9c5qaE9ajWxR5R4zwfQg data_1 ; { nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w ) ) ; { NI _ ; NI res ; _ = ( NI ) 0 ;
# line 77 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / iterators_1.nim"
res = ( ( NI ) 0 ) ; {
# line 78 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / iterators_1.nim"
while ( 1 ) { NI TM__Vf3HUZLUfnMxxqD8A7j0JA_8 ;
# line 78 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / iterators_1.nim"
if ( ! ( res < = ( ( NI ) 1000000 ) ) ) goto LA3 ;
# line 219 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
_ = res ;
# line 220 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
rng_0 . ClE_0 ? rng_0 . ClP_0 ( data_1 , 32 , rng_0 . ClE_0 ) : ( ( TM__Vf3HUZLUfnMxxqD8A7j0JA_7 ) ( rng_0 . ClP_0 ) ) ( data_1 , 32 ) ;
# line 221 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{ int T6_ ;
# line 221 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 221 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 221 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T6_ = ( int ) 0 ; T6_ = secp256k1_ec_seckey_verify ( secp256k1_context_no_precomp , ( ( unsigned char * ) ( ( & data_1 [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) ) ; if ( ! ( T6_ = = ( ( NI32 ) 1 ) ) ) goto LA7_ ;
# line 222 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 222 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w ) ) ; nimCopyMem ( ( void * ) result . data , ( NIM_CONST void * ) data_1 , sizeof ( tyArray__vEOa9c5qaE9ajWxR5R4zwfQg ) ) ; goto BeforeRet_ ;
}
LA7_ : ;
# line 80 " / home / runner / work / nim-waku / nim-waku / vendor / nimbus-build-system / vendor / Nim / lib / system / iterators_1.nim"
if ( nimAddInt ( res , ( ( NI ) 1 ) , & TM__Vf3HUZLUfnMxxqD8A7j0JA_8 ) ) { raiseOverflow ( ) ; } ; res = ( NI ) ( TM__Vf3HUZLUfnMxxqD8A7j0JA_8 ) ; } LA3 : ;
}
}
# line 224 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w ) ) ;
# line 224 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
chckNil ( ( void * ) result . data ) ; nimZeroMem ( ( void * ) result . data , sizeof ( tyArray__vEOa9c5qaE9ajWxR5R4zwfQg ) ) ;
# line 226 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 226 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
raiseAssert__gpGJG5CoQzE64skFd9bPG7A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_9 ) ) ;
} BeforeRet_ : ;
return result ; }
# line 286 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( void , toRaw__bCgy0bI8LIRIvVpAjgBPMg ) ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA * pubkey , tyArray__DqM3b17bbm0d9bCZr9c2fLDQ Result ) { size_t length ; int res ; chckNil ( ( void * ) Result ) ; nimZeroMem ( ( void * ) Result , sizeof ( tyArray__DqM3b17bbm0d9bCZr9c2fLDQ ) ) ;
# line 288 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
length = ( ( size_t ) 65 ) ;
# line 289 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 289 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ec_pubkey_serialize ( secp256k1_context_no_precomp , ( ( unsigned char * ) ( ( & Result [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( & length ) , ( & ( * pubkey ) . data ) , ( ( unsigned int ) 2 ) ) ;
# line 292 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 292 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 292 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA3_ ;
# line 292 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 292 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_10 ) ) ;
}
LA3_ : ;
}
2021-02-22 18:04:54 +00:00
# line 437 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA , signRecoverable__IwAS2SrVpsuq9cMsnSkCo9bg ) ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w * key_0 , tyArray__vEOa9c5qaE9ajWxR5R4zwfQg msg ) { tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA result ; tyObject_secp256k1_ecdsa_recoverable_signature__OOP9ck9bXU6uuG4T9bRTry9a4w data_1 ; int res ; tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * T1_ ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA ) ) ;
# line 438 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 440 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 441 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 441 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
T1_ = ( tyObject_secp256k1_context__POjLS06vi9b462f9boSHL5vQ * ) 0 ; T1_ = getContext__DnBbOJLwooKySk8h6Wtl4A ( ) ;
# line 440 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ecdsa_sign_recoverable ( T1_ , ( & data_1 ) , ( ( unsigned char * ) ( ( & msg [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( ( unsigned char * ) ( ( & ( * key_0 ) . data [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , NIM_NIL , NIM_NIL ) ;
# line 442 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 442 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 442 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA4_ ;
# line 442 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 442 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_11 ) ) ;
}
LA4_ : ;
chckNil ( ( void * ) ( & result ) ) ; nimZeroMem ( ( void * ) ( & result ) , sizeof ( tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA ) ) ; result . data = data_1 ; return result ; }
# line 387 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( void , toRaw__yPMUELBksARKX8FT2nORhg ) ( tyObject_SkRecoverableSignature__uOAg5bLjCmhDkxZdWSR9buA * sig , tyArray__DqM3b17bbm0d9bCZr9c2fLDQ Result ) { int recid ; int res ; chckNil ( ( void * ) Result ) ; nimZeroMem ( ( void * ) Result , sizeof ( tyArray__DqM3b17bbm0d9bCZr9c2fLDQ ) ) ;
# line 389 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
recid = ( ( int ) 0 ) ;
# line 390 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 390 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
res = secp256k1_ecdsa_recoverable_signature_serialize_compact ( secp256k1_context_no_precomp , ( ( unsigned char * ) ( ( & Result [ ( ( ( NI ) 0 ) ) - 0 ] ) ) ) , ( & recid ) , ( & ( * sig ) . data ) ) ;
# line 392 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
{
# line 392 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 392 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
if ( ! ! ( ( res = = ( ( NI32 ) 1 ) ) ) ) goto LA3_ ;
# line 392 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 392 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A ( ( ( NimStringDesc * ) & TM__Vf3HUZLUfnMxxqD8A7j0JA_12 ) ) ;
}
LA3_ : ;
# line 394 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
Result [ ( ( ( NI ) 64 ) ) - 0 ] = ( ( NU8 ) ( recid ) ) ; }
2021-02-12 20:27:55 +00:00
# line 415 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
N_LIB_PRIVATE N_NIMCALL ( NIM_BOOL , eqeq___zJO9bCgds9b4PyWAoL25AVCg ) ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA * lhs , tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA * rhs ) { NIM_BOOL result ; tyArray__DqM3b17bbm0d9bCZr9c2fLDQ T1_ ; tyArray__DqM3b17bbm0d9bCZr9c2fLDQ T2_ ; result = ( NIM_BOOL ) 0 ;
# line 416 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 417 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 417 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 417 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
nimZeroMem ( ( void * ) T1_ , sizeof ( tyArray__DqM3b17bbm0d9bCZr9c2fLDQ ) ) ; toRaw__bCgy0bI8LIRIvVpAjgBPMg ( lhs , T1_ ) ;
# line 417 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
# line 417 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
nimZeroMem ( ( void * ) T2_ , sizeof ( tyArray__DqM3b17bbm0d9bCZr9c2fLDQ ) ) ; toRaw__bCgy0bI8LIRIvVpAjgBPMg ( rhs , T2_ ) ;
# line 417 " / home / runner / work / nim-waku / nim-waku / vendor / nim-secp256k1 / secp256k1.nim"
result = isEqual__WxQYJ8fOGBPO2T0Kv9aJaEA ( T1_ , 65 , T2_ , 65 ) ; return result ; }
N_LIB_PRIVATE N_NIMCALL ( void , secp256k1_secp256k1DatInit000 ) ( void ) {
# line 999999 "generated_not_to_break_here"
static TNimNode * TM__Vf3HUZLUfnMxxqD8A7j0JA_6_2 [ 2 ] ;
static TNimNode TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 5 ] ; NTI__aKiBFtqo69b60sWLnM5A9c3w_ . size = sizeof ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w ) ;
NTI__aKiBFtqo69b60sWLnM5A9c3w_ . kind = 18 ;
NTI__aKiBFtqo69b60sWLnM5A9c3w_ . base = 0 ;
NTI__aKiBFtqo69b60sWLnM5A9c3w_ . flags = 3 ;
NTI__aKiBFtqo69b60sWLnM5A9c3w_ . name = " SkPrivateKey " ;
NTI__aKiBFtqo69b60sWLnM5A9c3w_ . nextType = nimTypeRoot ; nimTypeRoot = & NTI__aKiBFtqo69b60sWLnM5A9c3w_ ;
NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ . size = sizeof ( tyArray__vEOa9c5qaE9ajWxR5R4zwfQg ) ;
NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ . kind = 16 ;
NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ . base = ( & NTI__k3HXouOuhqAKq0dx450lXQ_ ) ;
NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ . flags = 3 ;
NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ . name = " array[0..31, byte] " ;
NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ . nextType = nimTypeRoot ; nimTypeRoot = & NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 0 ] . kind = 1 ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 0 ] . offset = offsetof ( tyObject_SkSecretKey__aKiBFtqo69b60sWLnM5A9c3w , data ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 0 ] . typ = ( & NTI__vEOa9c5qaE9ajWxR5R4zwfQg_ ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 0 ] . name = " data " ;
NTI__aKiBFtqo69b60sWLnM5A9c3w_ . node = & TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 0 ] ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . size = sizeof ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA ) ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . kind = 18 ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . base = 0 ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . flags = 3 ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . name = " SkPublicKey " ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . nextType = nimTypeRoot ; nimTypeRoot = & NTI__YxxaGK7KOKaWCOaZ44rHMA_ ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 1 ] . kind = 1 ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 1 ] . offset = offsetof ( tyObject_SkPublicKey__YxxaGK7KOKaWCOaZ44rHMA , data ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 1 ] . typ = ( & NTI__GYc9aFo1e2qOLdmAqUvIikQ_ ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 1 ] . name = " data " ;
NTI__YxxaGK7KOKaWCOaZ44rHMA_ . node = & TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 1 ] ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . size = sizeof ( tyObject_SkKeyPair__11md6PDL9c3Ydro9bo69avH7g ) ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . kind = 18 ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . base = 0 ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . flags = 3 ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . name = " KeyPair " ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . nextType = nimTypeRoot ; nimTypeRoot = & NTI__11md6PDL9c3Ydro9bo69avH7g_ ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_6_2 [ 0 ] = & TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 3 ] ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 3 ] . kind = 1 ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 3 ] . offset = offsetof ( tyObject_SkKeyPair__11md6PDL9c3Ydro9bo69avH7g , seckey ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 3 ] . typ = ( & NTI__aKiBFtqo69b60sWLnM5A9c3w_ ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 3 ] . name = " seckey " ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_6_2 [ 1 ] = & TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 4 ] ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 4 ] . kind = 1 ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 4 ] . offset = offsetof ( tyObject_SkKeyPair__11md6PDL9c3Ydro9bo69avH7g , pubkey ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 4 ] . typ = ( & NTI__YxxaGK7KOKaWCOaZ44rHMA_ ) ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 4 ] . name = " pubkey " ;
TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 2 ] . len = 2 ; TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 2 ] . kind = 2 ; TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 2 ] . sons = & TM__Vf3HUZLUfnMxxqD8A7j0JA_6_2 [ 0 ] ;
NTI__11md6PDL9c3Ydro9bo69avH7g_ . node = & TM__Vf3HUZLUfnMxxqD8A7j0JA_0 [ 2 ] ;
}