/* Generated by Nim Compiler v1.7.1 */ #define NIM_INTBITS 64 #include "nimbase.h" #include #include #include #include #include #include #include #include #include #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_(proc, file) \ TFrame FR_; \ FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_); # define nimfrs_(proc, file, slots, length) \ struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename; NI len; VarSlot s[slots];} FR_; \ FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_); # define nimln_(n, file) \ FR_.line = n; FR_.filename = file; typedef struct tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w; typedef struct tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw; typedef struct tyObject_HashSet__bGAilYs5sUICRbD13gZaFg tyObject_HashSet__bGAilYs5sUICRbD13gZaFg; typedef struct tySequence__8Np6tlClE5az1CyqZdN19bQ tySequence__8Np6tlClE5az1CyqZdN19bQ; typedef struct tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ; typedef struct TNimType TNimType; typedef struct TNimNode TNimNode; typedef struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ; typedef struct TGenericSeq TGenericSeq; typedef struct RootObj RootObj; typedef struct NimStringDesc NimStringDesc; typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA; typedef struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A tyTuple__JfHvHzMrhKkWAUvQKe0i1A; typedef struct tyObject_Env_netdotnim_net___diB2NTuAIWY0FO9c5IUJRGg tyObject_Env_netdotnim_net___diB2NTuAIWY0FO9c5IUJRGg; typedef struct tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA; typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA; typedef struct Exception Exception; typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA; typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g; typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w; typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ; typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA; typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg; typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ; typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg; typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw; typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA; typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw; typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw; typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg; typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg; typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg; typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ; typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg; typedef struct tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw; typedef struct tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg; typedef struct tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw; typedef struct TSafePoint TSafePoint; typedef struct tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ; typedef struct tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ; typedef struct tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA; typedef struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw; typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA; typedef struct tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw; typedef struct tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og; typedef struct tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w; typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA; struct tyObject_HashSet__bGAilYs5sUICRbD13gZaFg { tySequence__8Np6tlClE5az1CyqZdN19bQ* data; NI counter; }; struct tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w { tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* context; tyObject_HashSet__bGAilYs5sUICRbD13gZaFg referencedData; tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ* extraInternal; }; 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; NI align; tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind; tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags; TNimType* base; TNimNode* node; void* finalizer; tyProc__ojoeKfW4VYIm36I9cpDTQIg marker; tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy; }; typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ; struct TNimNode { tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind; NI offset; TNimType* typ; NCSTRING name; NI len; TNimNode** sons; }; struct tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ { NI Field0; NI Field1; }; struct TGenericSeq { NI len; NI reserved; }; struct RootObj { TNimType* m_type; }; struct NimStringDesc { TGenericSeq Sup; NIM_CHAR data[SEQ_DECL_SIZE]; }; typedef struct { N_NIMCALL_PTR(NimStringDesc*, ClP_0) (NimStringDesc* identity, void* ClE_0); void* ClE_0; } tyProc__oFHfEKFsiYTMAy9a42cSiKw; typedef struct { N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* hint, tyTuple__UV3llMMYFckfui8YMBuUZA* Result, void* ClE_0); void* ClE_0; } tyProc__lYMtBEH0vEMRzoDaCw5CJg; struct tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ { RootObj Sup; tyProc__oFHfEKFsiYTMAy9a42cSiKw serverGetPskFunc; tyProc__lYMtBEH0vEMRzoDaCw5CJg clientGetPskFunc; }; struct tyTuple__JfHvHzMrhKkWAUvQKe0i1A { void* Field0; tyObject_Env_netdotnim_net___diB2NTuAIWY0FO9c5IUJRGg* Field1; }; typedef NU8 tyEnum_SslProtVersion__zq9bkhgPAE6ngdz7HLdOTDw; typedef NU8 tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg; struct Exception { RootObj Sup; Exception* parent; NCSTRING name; NimStringDesc* message; tySequence__uB9b75OUPRENsBAu4AnoePA* trace; Exception* up; }; struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA { Exception Sup; }; struct tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA { tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup; }; struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g { NI refcount; TNimType* typ; }; struct tyObject_GcStack__7fytPA5bBsob6See21YMRA { void* bottom; }; struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w { NI len; NI cap; tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d; }; typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256]; typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24]; typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32]; typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24]; typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256]; struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA { tyArray__lh2A89ahMmYg9bCmpVaplLbA data; }; typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2]; struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw { tyArray__0aOLqZchNi8nWtMTi8ND8w link; NI key; NI upperBound; NI level; }; struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg { tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0; NI Field1; }; typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30]; struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg { NI len; tyArray__LzOv2eCDGiceMKQstCLmhw chunks; tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next; }; struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg { NI minLargeObj; NI maxLargeObj; tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks; NU32 flBitmap; tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap; tyArray__B6durA4ZCi1xjJvRtyYxMg matrix; tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem; NI currMem; NI maxMem; NI freeMem; NI occ; NI lastSize; tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes; NIM_BOOL locked; NIM_BOOL blockChunkSizeIncrease; NI nextChunkSize; tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData; tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks; }; struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg { NI stackScans; NI cycleCollections; NI maxThreshold; NI maxStackSize; NI maxStackCells; NI cycleTableSize; NI64 maxPause; }; struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ { NI counter; NI max; tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head; tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data; }; typedef long tyArray__xDUyu9aScDpt0JZLU6q9aEZQ[5]; struct tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw { tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg* head; tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg* tail; pthread_mutex_t lock; }; struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ { tyObject_GcStack__7fytPA5bBsob6See21YMRA stack; NI cycleThreshold; NI zctThreshold; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack; NI recGcLock; tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region; tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat; tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked; tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots; tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw toDispose; NI gcThreadId; }; typedef N_CDECL_PTR(unsigned long, tyProc__wCuLyuC5VitcgJKGCqJQRw) (void); typedef N_CDECL_PTR(NCSTRING, tyProc__5zMKCPIiPHTYY9cjyzsHlmQ) (unsigned long e, NCSTRING buf); typedef N_CDECL_PTR(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*, tyProc__Rqjya8uauy9aPcyfGamaSrg) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* meth); typedef N_CDECL_PTR(int, tyProc__2PA7CxitARKs0jpUW1gQ0g) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* s, NCSTRING ciphers); typedef N_CDECL_PTR(long, tyProc__JfY9aCDiBh9bgOEieo8Vltxg) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, int cmd, long larg, void* parg); typedef N_CDECL_PTR(NI, tyProc__aF4y9aPKIi8D4VGrVvX011Q) (NI a, void* b); typedef N_CDECL_PTR(void, tyProc__H5wL7jexPlRA7WCw9cqLm0A) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* s, NI mode, tyProc__aF4y9aPKIi8D4VGrVvX011Q cb); struct tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw { tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup; }; typedef N_STDCALL_PTR(int, tyProc__tYatIIo0oRSB9bjHLep7yhQ) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NCSTRING filename); typedef N_CDECL_PTR(int, tyProc__xjxKRHVZXDqdWXw9bunoZ3w) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NCSTRING filename, int typ); typedef N_CDECL_PTR(int, tyProc__Vff1ipOwDPDGknaRJAdXjA) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx); typedef N_CDECL_PTR(int, tyProc__gZVmmOpGrWMJL1q0d9bMEZQ) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NCSTRING CAfile, NCSTRING CApath); typedef NCSTRING tyUncheckedArray__nvS6J9clHMUMHfoZd8Ad2zg[1]; typedef long tyArray__TcvIiMAJvcwzNLsZkfnFnQ[25]; struct TSafePoint { TSafePoint* prev; NI status; jmp_buf context; }; typedef NimStringDesc* tyArray__DLxB9cOndPvLDyky9bY9ccM3g[7]; typedef NIM_CHAR tyArray__QQGLPNVVwLhYjkngqAxXQQ[4001]; typedef NU8 tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg; typedef NU8 tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw; typedef NU8 tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg; struct tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ { int fd; NIM_BOOL isBuffered; tyArray__QQGLPNVVwLhYjkngqAxXQQ buffer; NI currPos; NI bufLen; NIM_BOOL isSsl; tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* sslHandle; tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* sslContext; NIM_BOOL sslNoHandshake; NIM_BOOL sslHasPeekChar; NIM_CHAR sslPeekChar; NIM_BOOL sslNoShutdown; NI32 lastError; tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg domain; tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw sockType; tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol; }; typedef NU8 tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg; typedef unsigned long tyArray__2VPt2Ygo2bc8d9cj8iiKnSg[16]; typedef N_CDECL_PTR(void, tyProc__ln4kdL5W9bbX4a1xl8nnVXQ) (void); typedef N_CDECL_PTR(int, tyProc__kxUw9cdxJbPtv0iPyoSbDBQ) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* s, int ret_code); typedef NU8 tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg; typedef N_CDECL_PTR(void, tyProc__e47RoMUolEGMiUlfiZt9abQ) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ssl); struct tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw { char dummy; }; typedef int tyArray__JC6Xlef5rNPKoqzdesSPoQ[24]; struct tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ { tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg val; NIM_BOOL has; }; typedef NU8 tyEnum_SslHandshakeType__9aZhh5f9bRDKgYB8GLASDSqg; typedef NU8 tyEnum_IpAddressFamily__iqqacz9cr9bcNjYY74E10wPA; typedef NU8 tyArray__qtqsWM5aXmcpMIVmvq3kAA[16]; typedef NU8 tyArray__H8qf9bpC2ziYA2earmO8m7w[4]; struct tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA { tyEnum_IpAddressFamily__iqqacz9cr9bcNjYY74E10wPA family; union{ struct {tyArray__qtqsWM5aXmcpMIVmvq3kAA address_v6; } _family_1; struct {tyArray__H8qf9bpC2ziYA2earmO8m7w address_v4; } _family_2; }; }; struct tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw { tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup; }; struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA { NI a; NI b; }; typedef N_CDECL_PTR(int, tyProc__1qZLXaQcVS6n0MTUeNxl3w) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* cert, NCSTRING name, int namelen, unsigned int flags, NCSTRING peername); typedef N_CDECL_PTR(int, tyProc__sG7rgqmtlgBaumPwwN3BfQ) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ssl, NCSTRING buf, NI num); struct tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw { NI64 seconds; NI nanosecond; }; struct tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og { tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup; }; struct tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w { NI64 ticks; }; typedef N_CDECL_PTR(int, tyProc__09aW01hZ1tSPafLaWVpBcXA) (tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ssl, void* buf, NI num); struct tyTuple__UV3llMMYFckfui8YMBuUZA { NimStringDesc* Field0; NimStringDesc* Field1; }; struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA { NCSTRING procname; NI line; NCSTRING filename; }; typedef NIM_CHAR tyArray__NSMq3FMCIrS8gSbyinBZ8w[14]; struct tySequence__8Np6tlClE5az1CyqZdN19bQ { TGenericSeq Sup; tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ data[SEQ_DECL_SIZE]; }; struct tySequence__uB9b75OUPRENsBAu4AnoePA { TGenericSeq Sup; tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE]; }; static N_NIMCALL(void, Marker_tySequence__8Np6tlClE5az1CyqZdN19bQ)(void* p, NI op); N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op); static N_NIMCALL(void, Marker_tyRef__t2PQ49cw9cyPD5BKolxzFbTw)(void* p, NI op); static N_NIMCALL(void, Marker_tyRef__LP7l6kWJNPJLySYXWH5AYA)(void* p, NI op); N_LIB_PRIVATE N_NIMCALL(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*, TLS_method__wrappersZopenssl_246)(void); N_LIB_PRIVATE N_NIMCALL(void, raiseSSLError__pureZnet_510)(NimStringDesc* s); static N_NIMCALL(void, Marker_tyRef__VoScTqHOwyXBt9b3u4T1Ksw)(void* p, NI op); N_LIB_PRIVATE N_NOINLINE(void*, newObj)(TNimType* typ, NI size); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src); static N_INLINE(void, nimGCunrefNoCycle)(void* p); static N_INLINE(void, decRef__system_5905)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); static N_INLINE(NI, minuspercent___system_716)(NI x, NI y); static N_INLINE(void, nimFrame)(TFrame* s); N_LIB_PRIVATE N_NOINLINE(void, callDepthLimitReached__system_3527)(void); static N_INLINE(void, popFrame)(void); static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y); static N_INLINE(void, rtlAddZCT__system_5903)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5854)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5860)(void* usr); static N_INLINE(void, asgnRef)(void** dest, void* src); static N_INLINE(void, incRef__system_5898)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c); static N_INLINE(NI, pluspercent___system_696)(NI x, NI y); N_LIB_PRIVATE N_NIMCALL(void, raiseExceptionEx)(Exception* e, NCSTRING ename, NCSTRING procname, NCSTRING filename, NI line); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cstrToNimstr)(NCSTRING str); static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src); static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size); static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space); static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s); N_LIB_PRIVATE N_NIMCALL(unsigned long, getOpenSSLVersion__wrappersZopenssl_254)(void); N_LIB_PRIVATE N_NIMCALL(int, SSL_CTX_set_ciphersuites__wrappersZopenssl_295)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NCSTRING str); static N_INLINE(int, SSL_CTX_set_ecdh_auto__wrappersZopenssl_612)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, int onoff); N_LIB_PRIVATE N_NOINLINE(void, raiseRangeErrorI)(NI64 i, NI64 a, NI64 b); N_LIB_PRIVATE N_NIMCALL(NI, SSLCTXSetMode__wrappersZopenssl_557)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NI mode); N_LIB_PRIVATE N_NIMCALL(void, loadCertificates__pureZnet_1019)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NimStringDesc* certFile, NimStringDesc* keyFile); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringDesc* filename); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsEnv__pureZos_426)(NimStringDesc* key); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getEnv__pureZos_421)(NimStringDesc* key, NimStringDesc* default_0); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosjoinPath)(NimStringDesc* head, NimStringDesc* tail); static N_INLINE(void, nimZeroMem)(void* p, NI size); static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size); static N_INLINE(void, pushSafePoint)(TSafePoint* s); static N_INLINE(NIM_BOOL, eqeq___system_8711)(NCSTRING x, NCSTRING y); N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_56)(NimStringDesc* msg); static N_INLINE(void, popSafePoint)(void); static N_INLINE(TFrame*, getFrame)(void); static N_INLINE(void, setFrame)(TFrame* s); N_LIB_PRIVATE N_NIMCALL(void, nimLeaveFinally)(void); N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringDesc* s, NimStringDesc* suffix); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosdirExists)(NimStringDesc* dir); N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void); N_LIB_PRIVATE N_NIMCALL(void, initHashSet__pureZnet_1065)(NI initialSize, tyObject_HashSet__bGAilYs5sUICRbD13gZaFg* Result); N_LIB_PRIVATE N_NIMCALL(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ*, new__pureZnet_1093)(void); static N_NIMCALL(void, Marker_tyRef__MkGXUPMSENeRDS7EppfLgA)(void* p, NI op); N_LIB_PRIVATE N_NIMCALL(int, SSL_in_init__wrappersZopenssl_270)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ssl); N_LIB_PRIVATE N_NOINLINE(void, raiseOSError__pureZos_405)(NI32 errorCode, NimStringDesc* additionalInfo); N_LIB_PRIVATE N_NIMCALL(NI32, osLastError__pureZos_408)(void); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDisconnectionError__pureZnet_171)(tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags, NI32 lastError); N_LIB_PRIVATE N_NIMCALL(void, socketError__pureZnet_165)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NI err, NIM_BOOL async, NI32 lastError, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen); N_LIB_PRIVATE N_NIMCALL(NI32, getSocketError__pureZnet_1373)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket); N_LIB_PRIVATE N_NIMCALL(void, close__pureZnativesockets_162)(int socket); N_LIB_PRIVATE N_NIMCALL(tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw, toSockType__pureZnativesockets_128)(tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol); N_LIB_PRIVATE N_NIMCALL(struct addrinfo*, getAddrInfo__pureZnativesockets_193)(NimStringDesc* address, NU16 port, tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg domain, tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw sockType, tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol); N_LIB_PRIVATE N_NIMCALL(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ, toKnownDomain__pureZnativesockets_74)(int family); static N_INLINE(NIM_BOOL, isNone__pureZnativesockets_308)(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ self); static N_INLINE(tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg*, unsafeGet__pureZnet_2024)(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ* self); static N_INLINE(NIM_BOOL, isSome__pureZnativesockets_283)(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ self); N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i, NI n); N_LIB_PRIVATE N_NIMCALL(int, createNativeSocket__pureZnativesockets_178)(tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg domain, tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw sockType, tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol, NIM_BOOL inheritable); N_LIB_PRIVATE N_NIMCALL(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*, newSocket__pureZnet_222)(int fd_0, tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg domain, tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw sockType, tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol, NIM_BOOL buffered); N_LIB_PRIVATE N_NIMCALL(void, wrapSocket__pureZnet_1293)(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* ctx, tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isIpAddress__pureZnet_473)(NimStringDesc* addressStr); N_LIB_PRIVATE N_NIMCALL(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA, parseIpAddress__pureZnet_465)(NimStringDesc* addressStr); static N_INLINE(NIM_BOOL, contains__pureZos_661)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item); static N_INLINE(NI, find__pureZos_666)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item); N_LIB_PRIVATE N_NIMCALL(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA, parseIPv6Address__pureZnet_329)(NimStringDesc* addressStr); N_LIB_PRIVATE N_NOINLINE(void, raiseFieldError2)(NimStringDesc* f, NimStringDesc* discVal); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprDiscriminant)(NI e, TNimType* typ); static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_867)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x); N_NIMCALL(NimStringDesc*, mnewString)(NI len); static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_842)(NI a, NI b); N_LIB_PRIVATE N_NIMCALL(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA, parseIPv4Address__pureZnet_277)(NimStringDesc* addressStr); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isObj)(TNimType* obj, TNimType* subclass); static N_INLINE(Exception*, nimBorrowCurrentException)(void); static N_INLINE(void, popCurrentException)(void); N_LIB_PRIVATE N_NIMCALL(NI, SSL_set_tlsext_host_name__wrappersZopenssl_566)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ssl, NCSTRING name); N_LIB_PRIVATE N_NIMCALL(void, checkCertName__pureZnet_1305)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NimStringDesc* hostname); N_LIB_PRIVATE N_NIMCALL(NI, send__pureZnet_1719)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* data, NI size); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isClosed__pureZnet_1533)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket); N_LIB_PRIVATE N_NIMCALL(void, readLine__pureZnet_1673)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NimStringDesc** line, NI timeout, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags, NI maxLength); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen); N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src); N_LIB_PRIVATE N_NIMCALL(NI, waitFor__pureZnet_1600)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw* waited, NI timeout, NI size, NimStringDesc* funcName); N_LIB_PRIVATE N_NIMCALL(NI64, inMilliseconds__pureZtimes_664)(tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw dur); static N_NIMCALL(void, Marker_tyRef__OhBa09cfBAnY4MdnNlGabWQ)(void* p, NI op); N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasDataBuffered__pureZnet_1530)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* s); N_LIB_PRIVATE N_NIMCALL(tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w, getMonoTime__stdZmonotimes_5)(void); N_LIB_PRIVATE N_NIMCALL(NI, timeoutRead__pureZnet_135)(int* fd_0, NI timeout); N_LIB_PRIVATE N_NIMCALL(void, pluseq___pureZtimes_924)(tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw* d1, tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw d2); N_LIB_PRIVATE N_NIMCALL(tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw, minus___stdZmonotimes_23)(tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w a, tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w b); N_LIB_PRIVATE N_NIMCALL(NI, recv__pureZnet_1576)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* data, NI size); N_LIB_PRIVATE N_NIMCALL(NI, readIntoBuf__pureZnet_1547)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NI32 flags); N_LIB_PRIVATE N_NIMCALL(NI, uniRecv__pureZnet_1536)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* buffer, int size, int flags); N_LIB_PRIVATE N_NIMCALL(NI, peekChar__pureZnet_1668)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NIM_CHAR* c); N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c); N_LIB_PRIVATE N_NIMCALL(NI, recv__pureZnet_1635)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* data, NI size, NI timeout); N_LIB_PRIVATE TNimType NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_; extern TNimType NTIsslctx__QQ33RYEe889cv60wm9bVkd8A_; N_LIB_PRIVATE TNimType NTIhashset__bGAilYs5sUICRbD13gZaFg_; N_LIB_PRIVATE TNimType NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_; extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_; N_LIB_PRIVATE TNimType NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_; extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_; N_LIB_PRIVATE TNimType NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_; N_LIB_PRIVATE TNimType NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_; extern TNimType NTIpointer__vr5DoT1jILTGdRlYv1OYpw_; extern TNimType NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_; N_LIB_PRIVATE TNimType NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_; N_LIB_PRIVATE TNimType NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_; N_LIB_PRIVATE TNimType NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_; extern TNimType NTIcatchableerror__qrLSDoe2oBoAqNtJ9badtnA_; N_LIB_PRIVATE TNimType NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_; N_LIB_PRIVATE TNimType NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_8, "No error reported.", 18); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_9, "Please upgrade your OpenSSL library, it does not support the necessary protocols. OpenSSL error is: ", 100); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_10, "Failed to create TLS context", 28); extern TNimType NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_; extern TNimType NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_11, "Certificate file could not be found: ", 37); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_12, "Key file could not be found: ", 29); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_13, "Verification of private key file failed.", 40); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_14, "Failed to load SSL/TLS CA certificate(s).", 41); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_15, "SSL_CERT_FILE", 13); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_16, "SSL_CERT_DIR", 12); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_17, "*", 1); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_19, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim(2125, 15) `f`gensym151.gl_pathv[i`gensym151] != nil` ", 99); extern NIM_CONST tyArray__DLxB9cOndPvLDyky9bY9ccM3g certificatePaths__pureZssl95certs_3; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_20, ".pem", 4); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_21, ".crt", 4); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_24, "No SSL/TLS CA certificates found.", 33); N_LIB_PRIVATE TNimType NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_; extern TNimType NTIcint__nlCscttRCss70IBTyuBqnA_; extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_; extern TNimType NTIchar__nmiMWKVIe46vacnhAFrQvw_; N_LIB_PRIVATE TNimType NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_; extern TNimType NTIint5150__sVg18TP9cLifHyygRe9cro9aA_; extern TNimType NTIdomain__Q79bEtFARvq0ekDNtvj3Vqg_; extern TNimType NTIsocktype__NQT1bItGG2X9byGdrWX7ujw_; extern TNimType NTIprotocol__dqJ1OqRGclxIMMdSLRzzXg_; N_LIB_PRIVATE TNimType NTIsocket__MkGXUPMSENeRDS7EppfLgA_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_27, "Couldn\'t add SIGPIPE to Sigset", 30); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_28, "Couldn\'t block SIGPIPE", 22); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_30, "Couldn\'t select SIGPIPE", 23); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_31, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(1178, 16) `signal`gensym116`gensym119 == SIGPIPE` ", 97); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_32, "TLS/SSL connection failed to initiate, socket closed prematurely.", 65); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_33, "Not enough data on socket.", 26); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_34, "Function for x509 lookup has been called.", 41); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_35, "IO error has occurred ", 22); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_36, "because an EOF was observed that violates the protocol", 54); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_37, "in the BIO layer", 16); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_38, ": ", 2); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_39, "Unknown Error", 13); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_40, "No valid socket error code available", 36); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_41, "Couldn\'t unblock SIGPIPE", 24); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_43, "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim(375, 10) `self.isSome` ", 74); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_46, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(264, 10) `fd != osInvalidSocket` ", 80); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_47, "Couldn\'t resolve address: ", 26); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_48, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(792, 11) `not socket.isSsl` ", 75); extern TNimType NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_; extern TNimType NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_50, "IP Address string is empty", 26); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_53, "Invalid IP Address", 18); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_54, "Invalid IP Address. Address contains an invalid separator", 57); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_55, "Invalid IP Address. Address contains more than one \"::\" separator", 65); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_56, "Invalid IP Address. The address consists of too many groups", 59); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_57, "field \'address_v6\' is not accessible for type \'IpAddress\' using \'family = ", 74); N_LIB_PRIVATE TNimType NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_65, "Invalid IP Address. Address may not start with \":\"", 50); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_67, "Invalid IP Address. Address may not end with \":\"", 48); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_72, "Invalid IP Address. Value is out of range", 41); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_73, "Invalid IP Address. Address contains an invalid character", 57); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_75, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim(195, 11) `len(a) == L` the length of the string changed while iterating over it", 134); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_84, "Invalid IP address. Octal numbers not allowed", 45); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_93, "Invalid IP Address. The address consists of too few groups", 58); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_108, "Invalid IP address. Octal numbers are not allowed", 49); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_110, "field \'address_v4\' is not accessible for type \'IpAddress\' using \'family = ", 74); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_113, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(810, 14) `socket.isSsl` ", 71); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_115, "No SSL certificate found.", 25); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_116, "SSL Certificate check failed.", 29); extern TNimType NTIlibraryerror__x1muge9crz9aAVqWWUrEL9aXg_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_117, "SSL import failed", 17); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_118, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(1698, 9) `not socket.isClosed` Cannot `send` on a closed socket", 110); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_119, "Could not send all data.", 24); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_120, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(1423, 24) `false` ", 65); N_LIB_PRIVATE TNimType NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_; N_LIB_PRIVATE TNimType NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_; STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_123, "Call to \'", 9); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_124, "\' timed out.", 12); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_126, "readLine", 8); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_127, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(1339, 9) `not socket.isClosed` Cannot `recv` on a closed socket", 110); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_131, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(1387, 14) `size - read >= chunk` ", 80); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_138, "\015\012", 2); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_140, "recv", 4); STRING_LITERAL(TM__XqsrSBxhOTPgLQ9cX4MmV4A_142, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim(1460, 12) `avail <= size - read` ", 80); extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5793; extern tyProc__wCuLyuC5VitcgJKGCqJQRw Dl_2113929663_; extern tyProc__5zMKCPIiPHTYY9cjyzsHlmQ Dl_2113929659_; extern tyProc__Rqjya8uauy9aPcyfGamaSrg Dl_2113929550_; extern tyProc__2PA7CxitARKs0jpUW1gQ0g Dl_2113929567_; extern tyProc__JfY9aCDiBh9bgOEieo8Vltxg Dl_2113929764_; extern tyProc__H5wL7jexPlRA7WCw9cqLm0A Dl_2113929558_; extern tyProc__tYatIIo0oRSB9bjHLep7yhQ Dl_2113929574_; extern tyProc__xjxKRHVZXDqdWXw9bunoZ3w Dl_2113929577_; extern tyProc__Vff1ipOwDPDGknaRJAdXjA Dl_2113929581_; extern tyProc__gZVmmOpGrWMJL1q0d9bMEZQ Dl_2113929552_; extern NIM_THREADVAR TSafePoint* excHandler__system_3095; extern NIM_THREADVAR TSafePoint* excHandler__system_3095; extern NIM_THREADVAR TSafePoint* excHandler__system_3095; extern NIM_THREADVAR TSafePoint* excHandler__system_3095; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern NIM_THREADVAR TFrame* framePtr__system_3094; extern tyProc__ln4kdL5W9bbX4a1xl8nnVXQ Dl_2113929869_; extern tyProc__Vff1ipOwDPDGknaRJAdXjA Dl_2113929599_; extern tyProc__kxUw9cdxJbPtv0iPyoSbDBQ Dl_2113929616_; extern tyProc__e47RoMUolEGMiUlfiZt9abQ Dl_2113929537_; extern int osInvalidSocket__pureZnativesockets_47; extern tyProc__Rqjya8uauy9aPcyfGamaSrg Dl_2113929535_; extern tyProc__kxUw9cdxJbPtv0iPyoSbDBQ Dl_2113929596_; extern NIM_THREADVAR Exception* currException__system_3096; extern NIM_THREADVAR Exception* currException__system_3096; extern NIM_THREADVAR Exception* currException__system_3096; extern tyProc__Vff1ipOwDPDGknaRJAdXjA Dl_2113929606_; extern tyProc__Rqjya8uauy9aPcyfGamaSrg Dl_2113930115_; extern tyProc__1qZLXaQcVS6n0MTUeNxl3w Dl_2113930130_; extern tyProc__e47RoMUolEGMiUlfiZt9abQ Dl_2113930136_; extern tyProc__Vff1ipOwDPDGknaRJAdXjA Dl_2113929619_; extern tyProc__sG7rgqmtlgBaumPwwN3BfQ Dl_2113929612_; extern tyProc__Vff1ipOwDPDGknaRJAdXjA Dl_2113929621_; extern tyProc__09aW01hZ1tSPafLaWVpBcXA Dl_2113929608_; static N_NIMCALL(void, Marker_tySequence__8Np6tlClE5az1CyqZdN19bQ)(void* p, NI op) { tySequence__8Np6tlClE5az1CyqZdN19bQ* a; NI T1_; a = (tySequence__8Np6tlClE5az1CyqZdN19bQ*)p; T1_ = (NI)0; } static N_NIMCALL(void, Marker_tyRef__t2PQ49cw9cyPD5BKolxzFbTw)(void* p, NI op) { tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ* a; a = (tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ*)p; nimGCvisit((void*)(*a).serverGetPskFunc.ClE_0, op); nimGCvisit((void*)(*a).clientGetPskFunc.ClE_0, op); } static N_NIMCALL(void, Marker_tyRef__LP7l6kWJNPJLySYXWH5AYA)(void* p, NI op) { tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* a; a = (tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w*)p; nimGCvisit((void*)(*a).referencedData.data, op); nimGCvisit((void*)(*a).extraInternal, op); } static N_NIMCALL(void, Marker_tyRef__VoScTqHOwyXBt9b3u4T1Ksw)(void* p, NI op) { tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA* a; a = (tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA*)p; nimGCvisit((void*)(*a).Sup.Sup.parent, op); nimGCvisit((void*)(*a).Sup.Sup.message, op); nimGCvisit((void*)(*a).Sup.Sup.trace, op); nimGCvisit((void*)(*a).Sup.Sup.up, op); } static N_INLINE(void, nimFrame)(TFrame* s) { { if (!(framePtr__system_3094 == ((TFrame*) NIM_NIL))) goto LA3_; (*s).calldepth = ((NI16) 0); } goto LA1_; LA3_: ; { (*s).calldepth = (NI16)((*framePtr__system_3094).calldepth + ((NI16) 1)); } LA1_: ; (*s).prev = framePtr__system_3094; framePtr__system_3094 = s; { if (!((*s).calldepth == ((NI16) 2000))) goto LA8_; callDepthLimitReached__system_3527(); } LA8_: ; } static N_INLINE(void, popFrame)(void) { framePtr__system_3094 = (*framePtr__system_3094).prev; } static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) { NI result; nimfr_("-%", "/home/yyoncho/Sources/nim/Nim/lib/system/arithmetics.nim"); result = (NI)0; nimln_(414, "/home/yyoncho/Sources/nim/Nim/lib/system/arithmetics.nim"); nimln_(418, "/home/yyoncho/Sources/nim/Nim/lib/system/arithmetics.nim"); result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y)))))); popFrame(); return result; } static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) { NIM_BOOL result; nimfr_("<%", "/home/yyoncho/Sources/nim/Nim/lib/system/comparisons.nim"); result = (NIM_BOOL)0; nimln_(186, "/home/yyoncho/Sources/nim/Nim/lib/system/comparisons.nim"); nimln_(188, "/home/yyoncho/Sources/nim/Nim/lib/system/comparisons.nim"); result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y)))); popFrame(); return result; } static N_INLINE(void, rtlAddZCT__system_5903)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) { nimfr_("rtlAddZCT", "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); nimln_(243, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); addZCT__system_5854((&gch__system_5793.zct), c); popFrame(); } static N_INLINE(void, decRef__system_5905)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) { nimfr_("decRef", "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); nimln_(248, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); (*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8)); nimln_(249, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8)); if (!T3_) goto LA4_; nimln_(250, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); rtlAddZCT__system_5903(c); } LA4_: ; popFrame(); } static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5860)(void* usr) { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result; NI T1_; nimfr_("usrToCell", "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; nimln_(177, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); T1_ = (NI)0; T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 16)); result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_)); popFrame(); return result; } static N_INLINE(void, nimGCunrefNoCycle)(void* p) { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_; nimfr_("nimGCunrefNoCycle", "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); nimln_(276, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T1_ = usrToCell__system_5860(p); decRef__system_5905(T1_); popFrame(); } static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) { NI result; nimfr_("+%", "/home/yyoncho/Sources/nim/Nim/lib/system/arithmetics.nim"); result = (NI)0; nimln_(403, "/home/yyoncho/Sources/nim/Nim/lib/system/arithmetics.nim"); nimln_(407, "/home/yyoncho/Sources/nim/Nim/lib/system/arithmetics.nim"); result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y)))))); popFrame(); return result; } static N_INLINE(void, incRef__system_5898)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) { nimfr_("incRef", "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); nimln_(231, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); (*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8)); popFrame(); } static N_INLINE(void, asgnRef)(void** dest, void* src) { nimfr_("asgnRef", "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); nimln_(286, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_; if (!!((src == NIM_NIL))) goto LA3_; T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T5_ = usrToCell__system_5860(src); incRef__system_5898(T5_); } LA3_: ; nimln_(287, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_; if (!!(((*dest) == NIM_NIL))) goto LA8_; T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T10_ = usrToCell__system_5860((*dest)); decRef__system_5905(T10_); } LA8_: ; nimln_(288, "/home/yyoncho/Sources/nim/Nim/lib/system/gc.nim"); (*dest) = src; popFrame(); } static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) { void* T1_; T1_ = (void*)0; T1_ = memcpy(dest, source, ((size_t) (size))); } static N_INLINE(void, copyMem__system_1727)(void* dest, void* source, NI size) { nimCopyMem(dest, source, size); } static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) { { if (!!((src == ((NimStringDesc*) NIM_NIL)))) goto LA3_; copyMem__system_1727(((void*) ((&(*dest).data[(*dest).Sup.len]))), ((void*) ((*src).data)), ((NI) ((NI)((*src).Sup.len + ((NI) 1))))); (*dest).Sup.len += (*src).Sup.len; } LA3_: ; } N_LIB_PRIVATE N_NIMCALL(void, raiseSSLError__pureZnet_510)(NimStringDesc* s) { unsigned long err; NimStringDesc* errStr; NCSTRING T13_; tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA* T17_; NimStringDesc* T18_; nimfr_("raiseSSLError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(555, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA* T5_; NimStringDesc* T6_; if (!!(((s ? s->Sup.len : 0) == 0))) goto LA3_; T5_ = NIM_NIL; T5_ = (tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA*) newObj((&NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_), sizeof(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA)); (*T5_).Sup.Sup.Sup.m_type = (&NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_); (*T5_).Sup.Sup.name = "SslError"; T6_ = NIM_NIL; T6_ = (*T5_).Sup.Sup.message; (*T5_).Sup.Sup.message = copyStringRC1(s); if (T6_) nimGCunrefNoCycle(T6_); asgnRef((void**) (&(*T5_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(556, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T5_, "SslError", "raiseSSLError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 556); } LA3_: ; nimln_(557, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); err = Dl_2113929663_(); nimln_(558, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA* T11_; NimStringDesc* T12_; if (!(err == ((NU) 0))) goto LA9_; T11_ = NIM_NIL; T11_ = (tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA*) newObj((&NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_), sizeof(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA)); (*T11_).Sup.Sup.Sup.m_type = (&NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_); (*T11_).Sup.Sup.name = "SslError"; T12_ = NIM_NIL; T12_ = (*T11_).Sup.Sup.message; (*T11_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_8)); if (T12_) nimGCunrefNoCycle(T12_); asgnRef((void**) (&(*T11_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(559, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T11_, "SslError", "raiseSSLError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 559); } LA9_: ; nimln_(560, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T13_ = (NCSTRING)0; T13_ = Dl_2113929659_(err, ((NCSTRING) NIM_NIL)); errStr = cstrToNimstr(T13_); nimln_(561, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); switch (err) { case ((NI) 336032814): case ((NI) 336032784): { NimStringDesc* T15_; nimln_(564, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T15_ = NIM_NIL; T15_ = rawNewString((errStr ? errStr->Sup.len : 0) + 100); appendString(T15_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_9)); appendString(T15_, errStr); errStr = T15_; } break; default: { } break; } T17_ = NIM_NIL; T17_ = (tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA*) newObj((&NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_), sizeof(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA)); (*T17_).Sup.Sup.Sup.m_type = (&NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_); (*T17_).Sup.Sup.name = "SslError"; T18_ = NIM_NIL; T18_ = (*T17_).Sup.Sup.message; (*T17_).Sup.Sup.message = copyStringRC1(errStr); if (T18_) nimGCunrefNoCycle(T18_); asgnRef((void**) (&(*T17_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(567, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T17_, "SslError", "raiseSSLError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 567); popFrame(); } static N_INLINE(NCSTRING, nimToCStringConv)(NimStringDesc* s) { NCSTRING result; result = (NCSTRING)0; { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = (s == ((NimStringDesc*) NIM_NIL)); if (T3_) goto LA4_; T3_ = ((*s).Sup.len == ((NI) 0)); LA4_: ; if (!T3_) goto LA5_; result = ""; } goto LA1_; LA5_: ; { result = ((NCSTRING) ((*s).data)); } LA1_: ; return result; } static N_INLINE(int, SSL_CTX_set_ecdh_auto__wrappersZopenssl_612)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, int onoff) { int result; nimfr_("SSL_CTX_set_ecdh_auto", "/home/yyoncho/Sources/nim/Nim/lib/wrappers/openssl.nim"); result = (int)0; nimln_(591, "/home/yyoncho/Sources/nim/Nim/lib/wrappers/openssl.nim"); { NIM_BOOL T3_; unsigned long T4_; unsigned long T6_; long T9_; T3_ = (NIM_BOOL)0; T4_ = (unsigned long)0; T4_ = getOpenSSLVersion__wrappersZopenssl_254(); T3_ = ((NU64)(T4_) < (NU64)(((NU) 269484032))); if (T3_) goto LA5_; T6_ = (unsigned long)0; T6_ = getOpenSSLVersion__wrappersZopenssl_254(); T3_ = (T6_ == ((NU) 536870912)); LA5_: ; if (!T3_) goto LA7_; nimln_(592, "/home/yyoncho/Sources/nim/Nim/lib/wrappers/openssl.nim"); T9_ = (long)0; T9_ = Dl_2113929764_(ctx, ((int) 94), ((long) (onoff)), NIM_NIL); if ((T9_) < ((int) (-2147483647 -1)) || (T9_) > ((int) 2147483647)){ raiseRangeErrorI(T9_, ((int) (-2147483647 -1)), ((int) 2147483647)); } result = ((int) (T9_)); } goto LA1_; LA7_: ; { nimln_(594, "/home/yyoncho/Sources/nim/Nim/lib/wrappers/openssl.nim"); result = ((int) 1); } LA1_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, loadCertificates__pureZnet_1019)(tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* ctx, NimStringDesc* certFile, NimStringDesc* keyFile) { nimfr_("loadCertificates", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(593, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T3_; NIM_BOOL T5_; tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw* T8_; NimStringDesc* T9_; T3_ = (NIM_BOOL)0; T3_ = !(((certFile ? certFile->Sup.len : 0) == 0)); if (!(T3_)) goto LA4_; T5_ = (NIM_BOOL)0; T5_ = nosfileExists(certFile); T3_ = !(T5_); LA4_: ; if (!T3_) goto LA6_; T8_ = NIM_NIL; T8_ = (tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw*) newObj((&NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_), sizeof(tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw)); (*T8_).Sup.Sup.Sup.m_type = (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_); (*T8_).Sup.Sup.name = "IOError"; nimln_(595, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T9_ = NIM_NIL; T9_ = rawNewString((certFile ? certFile->Sup.len : 0) + 37); appendString(T9_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_11)); appendString(T9_, certFile); asgnRef((void**) (&(*T8_).Sup.Sup.message), T9_); asgnRef((void**) (&(*T8_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(594, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T8_, "IOError", "loadCertificates", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 594); } LA6_: ; nimln_(596, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T12_; NIM_BOOL T14_; tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw* T17_; NimStringDesc* T18_; T12_ = (NIM_BOOL)0; T12_ = !(((keyFile ? keyFile->Sup.len : 0) == 0)); if (!(T12_)) goto LA13_; T14_ = (NIM_BOOL)0; T14_ = nosfileExists(keyFile); T12_ = !(T14_); LA13_: ; if (!T12_) goto LA15_; T17_ = NIM_NIL; T17_ = (tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw*) newObj((&NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_), sizeof(tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw)); (*T17_).Sup.Sup.Sup.m_type = (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_); (*T17_).Sup.Sup.name = "IOError"; nimln_(597, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T18_ = NIM_NIL; T18_ = rawNewString((keyFile ? keyFile->Sup.len : 0) + 29); appendString(T18_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_12)); appendString(T18_, keyFile); asgnRef((void**) (&(*T17_).Sup.Sup.message), T18_); asgnRef((void**) (&(*T17_).Sup.Sup.parent), ((Exception*) NIM_NIL)); raiseExceptionEx((Exception*)T17_, "IOError", "loadCertificates", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 597); } LA15_: ; nimln_(599, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int ret; if (!!(((certFile ? certFile->Sup.len : 0) == 0))) goto LA21_; nimln_(600, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); ret = Dl_2113929574_(ctx, nimToCStringConv(certFile)); nimln_(601, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((ret == ((NI32) 1)))) goto LA25_; nimln_(602, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA25_: ; } LA21_: ; nimln_(605, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!(((keyFile ? keyFile->Sup.len : 0) == 0))) goto LA29_; nimln_(606, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T33_; nimln_(607, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(606, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T33_ = (int)0; T33_ = Dl_2113929577_(ctx, nimToCStringConv(keyFile), ((int) 1)); if (!!((T33_ == ((NI32) 1)))) goto LA34_; nimln_(608, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA34_: ; nimln_(610, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T38_; T38_ = (int)0; T38_ = Dl_2113929581_(ctx); if (!!((T38_ == ((NI32) 1)))) goto LA39_; nimln_(611, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_13)); } LA39_: ; } LA29_: ; popFrame(); } static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) { void* T1_; T1_ = (void*)0; T1_ = memset(a, v, ((size_t) (size))); } static N_INLINE(void, nimZeroMem)(void* p, NI size) { nimSetMem__systemZmemory_7(p, ((int) 0), size); } static N_INLINE(void, pushSafePoint)(TSafePoint* s) { (*s).prev = excHandler__system_3095; excHandler__system_3095 = s; } static N_INLINE(NIM_BOOL, eqeq___system_8711)(NCSTRING x, NCSTRING y) { NIM_BOOL result; nimfr_("==", "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); result = (NIM_BOOL)0; nimln_(3016, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); { if (!(((void*) (x)) == ((void*) (y)))) goto LA3_; result = NIM_TRUE; } goto LA1_; LA3_: ; { NIM_BOOL T6_; nimln_(3017, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); T6_ = (NIM_BOOL)0; T6_ = (x == 0); if (T6_) goto LA7_; T6_ = (y == 0); LA7_: ; if (!T6_) goto LA8_; result = NIM_FALSE; } goto LA1_; LA8_: ; { int T11_; nimln_(3018, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); T11_ = (int)0; T11_ = strcmp(x, y); result = (T11_ == ((NI32) 0)); } LA1_: ; popFrame(); return result; } static N_INLINE(void, popSafePoint)(void) { excHandler__system_3095 = (*excHandler__system_3095).prev; } static N_INLINE(TFrame*, getFrame)(void) { TFrame* result; result = (TFrame*)0; result = framePtr__system_3094; return result; } static N_INLINE(void, setFrame)(TFrame* s) { framePtr__system_3094 = s; } N_LIB_PRIVATE N_NIMCALL(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w*, newContext__pureZnet_1026)(tyEnum_SslProtVersion__zq9bkhgPAE6ngdz7HLdOTDw protVersion, tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg verifyMode, NimStringDesc* certFile, NimStringDesc* keyFile, NimStringDesc* cipherList, NimStringDesc* caDir, NimStringDesc* caFile) { tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* result; tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* mtd; tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* newCTX; unsigned long sslVersion; NI T36_; TFrame* _nimCurFrame; tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* T175_; nimfr_("newContext", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); _nimCurFrame = getFrame(); result = NIM_NIL; nimln_(645, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); mtd = TLS_method__wrappersZopenssl_246(); nimln_(646, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(mtd == ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL))) goto LA3_; nimln_(647, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_10)); } LA3_: ; nimln_(648, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); newCTX = Dl_2113929550_(mtd); nimln_(649, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(newCTX == ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL))) goto LA7_; nimln_(650, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_10)); } LA7_: ; nimln_(652, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T11_; T11_ = (int)0; T11_ = Dl_2113929567_(newCTX, nimToCStringConv(cipherList)); if (!!((T11_ == ((NI32) 1)))) goto LA12_; nimln_(653, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA12_: ; nimln_(655, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); sslVersion = getOpenSSLVersion__wrappersZopenssl_254(); nimln_(656, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T16_; T16_ = (NIM_BOOL)0; T16_ = ((NU64)(((NU) 269488128)) <= (NU64)(sslVersion)); if (!(T16_)) goto LA17_; T16_ = ((NU)((NU64) ~(sslVersion)) == ((NU) 536870912)); LA17_: ; if (!T16_) goto LA18_; nimln_(659, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T22_; T22_ = (int)0; T22_ = SSL_CTX_set_ciphersuites__wrappersZopenssl_295(newCTX, nimToCStringConv(cipherList)); if (!!((T22_ == ((NI32) 1)))) goto LA23_; nimln_(660, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA23_: ; } LA18_: ; nimln_(666, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T27_; T27_ = (int)0; T27_ = SSL_CTX_set_ecdh_auto__wrappersZopenssl_612(newCTX, ((int) 1)); if (!!((T27_ == ((NI32) 1)))) goto LA28_; nimln_(667, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA28_: ; nimln_(672, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); switch (verifyMode) { case ((tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg) 1): case ((tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg) 2): { nimln_(674, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929558_(newCTX, ((NI) 1), NIM_NIL); } break; case ((tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg) 0): { nimln_(676, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929558_(newCTX, ((NI) 0), NIM_NIL); } break; } nimln_(678, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(newCTX == ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL))) goto LA34_; nimln_(679, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA34_: ; nimln_(681, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T36_ = (NI)0; T36_ = SSLCTXSetMode__wrappersZopenssl_557(newCTX, ((NI) 4)); (void)(T36_); nimln_(682, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); loadCertificates__pureZnet_1019(newCTX, certFile, keyFile); nimln_(687, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((verifyMode == ((tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg) 0)))) goto LA39_; nimln_(689, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T43_; T43_ = (NIM_BOOL)0; T43_ = !(((caDir ? caDir->Sup.len : 0) == 0)); if (T43_) goto LA44_; T43_ = !(((caFile ? caFile->Sup.len : 0) == 0)); LA44_: ; if (!T43_) goto LA45_; nimln_(690, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NCSTRING T49_; NCSTRING T55_; int T61_; tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw* T64_; NimStringDesc* T65_; T49_ = (NCSTRING)0; { if (!((caFile ? caFile->Sup.len : 0) == 0)) goto LA52_; T49_ = ((NCSTRING) NIM_NIL); } goto LA50_; LA52_: ; { T49_ = nimToCStringConv(caFile); } LA50_: ; T55_ = (NCSTRING)0; { if (!((caDir ? caDir->Sup.len : 0) == 0)) goto LA58_; T55_ = ((NCSTRING) NIM_NIL); } goto LA56_; LA58_: ; { T55_ = nimToCStringConv(caDir); } LA56_: ; T61_ = (int)0; T61_ = Dl_2113929552_(newCTX, T49_, T55_); if (!!((T61_ == ((NI32) 1)))) goto LA62_; T64_ = NIM_NIL; T64_ = (tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw*) newObj((&NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_), sizeof(tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw)); (*T64_).Sup.Sup.Sup.m_type = (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_); (*T64_).Sup.Sup.name = "IOError"; T65_ = NIM_NIL; T65_ = (*T64_).Sup.Sup.message; (*T64_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_14)); if (T65_) nimGCunrefNoCycle(T65_); asgnRef((void**) (&(*T64_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(691, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T64_, "IOError", "newContext", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 691); } LA62_: ; } goto LA41_; LA45_: ; { NIM_BOOL found; NIM_BOOL useEnvVars; nimln_(696, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); found = NIM_FALSE; nimln_(697, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(verifyMode == ((tyEnum_SslCVerifyMode__t9a9cuHiKUd7w4o8XPQAbfJg) 2))) goto LA69_; useEnvVars = NIM_TRUE; } goto LA67_; LA69_: ; { useEnvVars = NIM_FALSE; } LA67_: ; { NimStringDesc* fn; fn = NIM_NIL; nimln_(101, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); { NIM_BOOL T75_; T75_ = (NIM_BOOL)0; T75_ = useEnvVars; if (!(T75_)) goto LA76_; T75_ = existsEnv__pureZos_426(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_15)); LA76_: ; if (!T75_) goto LA77_; nimln_(698, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); fn = getEnv__pureZos_421(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_15), ((NimStringDesc*) NIM_NIL)); { int T81_; nimln_(699, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T81_ = (int)0; T81_ = Dl_2113929552_(newCTX, nimToCStringConv(fn), ((NCSTRING) NIM_NIL)); if (!(T81_ == ((NI32) 1))) goto LA82_; nimln_(700, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); found = NIM_TRUE; nimln_(701, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA72; } LA82_: ; } goto LA73_; LA77_: ; { NIM_BOOL T85_; NimStringDesc* p; nimln_(104, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); T85_ = (NIM_BOOL)0; T85_ = useEnvVars; if (!(T85_)) goto LA86_; T85_ = existsEnv__pureZos_426(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_16)); LA86_: ; if (!T85_) goto LA87_; nimln_(105, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); p = getEnv__pureZos_421(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_16), ((NimStringDesc*) NIM_NIL)); { NimStringDesc* fn_2; NimStringDesc* colontmp_; glob_t fX60gensym151_; NI resX60gensym151_; int T90_; TSafePoint TM__XqsrSBxhOTPgLQ9cX4MmV4A_18; fn_2 = NIM_NIL; colontmp_ = NIM_NIL; nimln_(106, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); colontmp_ = nosjoinPath(p, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_17)); nimZeroMem((void*)(&fX60gensym151_), sizeof(glob_t)); resX60gensym151_ = (NI)0; nimln_(2118, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); fX60gensym151_.gl_offs = ((size_t) 0); nimln_(2119, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); fX60gensym151_.gl_pathc = ((size_t) 0); nimln_(2120, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); fX60gensym151_.gl_pathv = ((NCSTRING*) NIM_NIL); nimln_(2121, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); T90_ = (int)0; T90_ = glob(nimToCStringConv(colontmp_), ((int) 0), NIM_NIL, (&fX60gensym151_)); resX60gensym151_ = ((NI) (T90_)); nimln_(2122, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); pushSafePoint(&TM__XqsrSBxhOTPgLQ9cX4MmV4A_18); TM__XqsrSBxhOTPgLQ9cX4MmV4A_18.status = setjmp(TM__XqsrSBxhOTPgLQ9cX4MmV4A_18.context); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_18.status == 0) { nimln_(2123, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); { if (!(resX60gensym151_ == ((NI) 0))) goto LA93_; { NU64 iX60gensym151_; NU64 colontmp__2; NU64 res; iX60gensym151_ = (NU64)0; colontmp__2 = (NU64)0; nimln_(2124, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); colontmp__2 = ((NU64) ((NU)((NU64)(fX60gensym151_.gl_pathc) - (NU64)(((NU) 1))))); nimln_(107, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res = 0ULL; { nimln_(108, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NimStringDesc* pathX60gensym151_; if (!((NU64)(res) <= (NU64)(colontmp__2))) goto LA97; nimln_(2124, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); iX60gensym151_ = res; nimln_(2125, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); { NIM_BOOL T100_; T100_ = (NIM_BOOL)0; T100_ = eqeq___system_8711(fX60gensym151_.gl_pathv[iX60gensym151_], ((NCSTRING) NIM_NIL)); if (!!(!(T100_))) goto LA101_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_19)); } LA101_: ; nimln_(2126, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); pathX60gensym151_ = cstrToNimstr(fX60gensym151_.gl_pathv[iX60gensym151_]); nimln_(2124, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); { NIM_BOOL T105_; nimln_(2164, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); T105_ = (NIM_BOOL)0; T105_ = nosfileExists(pathX60gensym151_); if (!T105_) goto LA106_; nimln_(106, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); fn_2 = pathX60gensym151_; nimln_(698, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); fn = fn_2; { int T110_; nimln_(699, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T110_ = (int)0; T110_ = Dl_2113929552_(newCTX, nimToCStringConv(fn), ((NCSTRING) NIM_NIL)); if (!(T110_ == ((NI32) 1))) goto LA111_; nimln_(700, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); found = NIM_TRUE; popSafePoint(); nimln_(2122, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); globfree((&fX60gensym151_)); nimln_(701, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA72; } LA111_: ; } LA106_: ; nimln_(110, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res += ((NI) 1); } LA97: ; } } } LA93_: ; popSafePoint(); } else { popSafePoint(); setFrame(_nimCurFrame); } { nimln_(2122, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); globfree((&fX60gensym151_)); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_18.status != 0) nimLeaveFinally(); } if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_18.status != 0) reraiseException(); } } goto LA73_; LA87_: ; { { NimStringDesc* p_2; NI i; p_2 = NIM_NIL; nimln_(36, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); i = ((NI) 0); { nimln_(37, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_23; nimln_(124, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); p_2 = copyString(certificatePaths__pureZssl95certs_3[(i)- 0]); { NIM_BOOL T121_; nimln_(125, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); T121_ = (NIM_BOOL)0; T121_ = nsuEndsWith(p_2, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_20)); if (T121_) goto LA122_; T121_ = nsuEndsWith(p_2, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_21)); LA122_: ; if (!T121_) goto LA123_; nimln_(126, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); { NIM_BOOL T127_; T127_ = (NIM_BOOL)0; T127_ = nosfileExists(p_2); if (!T127_) goto LA128_; nimln_(698, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); fn = p_2; { int T132_; nimln_(699, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T132_ = (int)0; T132_ = Dl_2113929552_(newCTX, nimToCStringConv(fn), ((NCSTRING) NIM_NIL)); if (!(T132_ == ((NI32) 1))) goto LA133_; nimln_(700, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); found = NIM_TRUE; nimln_(701, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA72; } LA133_: ; } LA128_: ; } goto LA119_; LA123_: ; { NIM_BOOL T136_; nimln_(128, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); T136_ = (NIM_BOOL)0; T136_ = nosdirExists(p_2); if (!T136_) goto LA137_; { NimStringDesc* fn_3; NimStringDesc* colontmp__3; glob_t fX60gensym151__2; NI resX60gensym151__2; int T140_; TSafePoint TM__XqsrSBxhOTPgLQ9cX4MmV4A_22; fn_3 = NIM_NIL; colontmp__3 = NIM_NIL; nimln_(129, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); colontmp__3 = nosjoinPath(p_2, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_17)); nimZeroMem((void*)(&fX60gensym151__2), sizeof(glob_t)); resX60gensym151__2 = (NI)0; nimln_(2118, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); fX60gensym151__2.gl_offs = ((size_t) 0); nimln_(2119, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); fX60gensym151__2.gl_pathc = ((size_t) 0); nimln_(2120, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); fX60gensym151__2.gl_pathv = ((NCSTRING*) NIM_NIL); nimln_(2121, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); T140_ = (int)0; T140_ = glob(nimToCStringConv(colontmp__3), ((int) 0), NIM_NIL, (&fX60gensym151__2)); resX60gensym151__2 = ((NI) (T140_)); nimln_(2122, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); pushSafePoint(&TM__XqsrSBxhOTPgLQ9cX4MmV4A_22); TM__XqsrSBxhOTPgLQ9cX4MmV4A_22.status = setjmp(TM__XqsrSBxhOTPgLQ9cX4MmV4A_22.context); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_22.status == 0) { nimln_(2123, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); { if (!(resX60gensym151__2 == ((NI) 0))) goto LA143_; { NU64 iX60gensym151__2; NU64 colontmp__4; NU64 res_2; iX60gensym151__2 = (NU64)0; colontmp__4 = (NU64)0; nimln_(2124, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); colontmp__4 = ((NU64) ((NU)((NU64)(fX60gensym151__2.gl_pathc) - (NU64)(((NU) 1))))); nimln_(107, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res_2 = 0ULL; { nimln_(108, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NimStringDesc* pathX60gensym151__2; if (!((NU64)(res_2) <= (NU64)(colontmp__4))) goto LA147; nimln_(2124, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); iX60gensym151__2 = res_2; nimln_(2125, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); { NIM_BOOL T150_; T150_ = (NIM_BOOL)0; T150_ = eqeq___system_8711(fX60gensym151__2.gl_pathv[iX60gensym151__2], ((NCSTRING) NIM_NIL)); if (!!(!(T150_))) goto LA151_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_19)); } LA151_: ; nimln_(2126, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); pathX60gensym151__2 = cstrToNimstr(fX60gensym151__2.gl_pathv[iX60gensym151__2]); nimln_(2124, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); { NIM_BOOL T155_; nimln_(2164, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); T155_ = (NIM_BOOL)0; T155_ = nosfileExists(pathX60gensym151__2); if (!T155_) goto LA156_; nimln_(129, "/home/yyoncho/Sources/nim/Nim/lib/pure/ssl_certs.nim"); fn_3 = pathX60gensym151__2; nimln_(698, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); fn = fn_3; { int T160_; nimln_(699, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T160_ = (int)0; T160_ = Dl_2113929552_(newCTX, nimToCStringConv(fn), ((NCSTRING) NIM_NIL)); if (!(T160_ == ((NI32) 1))) goto LA161_; nimln_(700, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); found = NIM_TRUE; popSafePoint(); nimln_(2122, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); globfree((&fX60gensym151__2)); nimln_(701, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA72; } LA161_: ; } LA156_: ; nimln_(110, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res_2 += ((NI) 1); } LA147: ; } } } LA143_: ; popSafePoint(); } else { popSafePoint(); setFrame(_nimCurFrame); } { nimln_(2122, "/home/yyoncho/Sources/nim/Nim/lib/pure/os.nim"); globfree((&fX60gensym151__2)); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_22.status != 0) nimLeaveFinally(); } if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_22.status != 0) reraiseException(); } } goto LA119_; LA137_: ; LA119_: ; nimln_(39, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); { if (!(((NI) 6) <= ((NI) (i)))) goto LA167_; goto LA117; } LA167_: ; nimln_(40, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); if (nimAddInt(i, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_23)) { raiseOverflow(); }; if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_23 < 0 || TM__XqsrSBxhOTPgLQ9cX4MmV4A_23 > 6){ raiseOverflow(); } i = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_23); } } LA117: ; } } LA73_: ; } LA72: ; nimln_(702, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw* T173_; NimStringDesc* T174_; if (!!(found)) goto LA171_; T173_ = NIM_NIL; T173_ = (tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw*) newObj((&NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_), sizeof(tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw)); (*T173_).Sup.Sup.Sup.m_type = (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_); (*T173_).Sup.Sup.name = "IOError"; T174_ = NIM_NIL; T174_ = (*T173_).Sup.Sup.message; (*T173_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_24)); if (T174_) nimGCunrefNoCycle(T174_); asgnRef((void**) (&(*T173_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(703, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T173_, "IOError", "newContext", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 703); } LA171_: ; } LA41_: ; } LA39_: ; nimln_(705, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T175_ = NIM_NIL; T175_ = (tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w*) newObj((&NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_), sizeof(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w)); (*T175_).context = newCTX; initHashSet__pureZnet_1065(((NI) 64), (&(*T175_).referencedData)); nimln_(706, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); asgnRef((void**) (&(*T175_).extraInternal), new__pureZnet_1093()); result = T175_; popFrame(); return result; } static N_NIMCALL(void, Marker_tyRef__MkGXUPMSENeRDS7EppfLgA)(void* p, NI op) { tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* a; NI T1_; a = (tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*)p; T1_ = (NI)0; nimGCvisit((void*)(*a).sslContext, op); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDisconnectionError__pureZnet_171)(tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags, NI32 lastError) { NIM_BOOL result; NIM_BOOL T1_; NIM_BOOL T3_; NIM_BOOL T4_; nimfr_("isDisconnectionError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (NIM_BOOL)0; nimln_(236, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(247, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T1_ = (NIM_BOOL)0; T1_ = ((flags &((NU8)1<<((NU)(((tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg) 1))&7U)))!=0); if (!(T1_)) goto LA2_; nimln_(249, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T3_ = (NIM_BOOL)0; nimln_(248, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T4_ = (NIM_BOOL)0; T4_ = (lastError == ((int) 104)); if (T4_) goto LA5_; nimln_(249, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T4_ = (lastError == ((int) 32)); LA5_: ; T3_ = T4_; if (T3_) goto LA6_; nimln_(250, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T3_ = (lastError == ((int) 102)); LA6_: ; T1_ = T3_; LA2_: ; result = T1_; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI32, getSocketError__pureZnet_1373)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket) { NI32 result; nimfr_("getSocketError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (NI32)0; nimln_(910, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = osLastError__pureZos_408(); nimln_(911, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result == ((NI32) 0))) goto LA3_; nimln_(912, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (*socket).lastError; } LA3_: ; nimln_(913, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result == ((NI32) 0))) goto LA7_; nimln_(914, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(result, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_40)); } LA7_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, socketError__pureZnet_165)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NI err, NIM_BOOL async, NI32 lastError, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags) { nimfr_("socketError", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimln_(930, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(*socket).isSsl) goto LA3_; nimln_(931, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int ret; if (!(err <= ((NI) 0))) goto LA7_; nimln_(932, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((err) < ((int) (-2147483647 -1)) || (err) > ((int) 2147483647)){ raiseRangeErrorI(err, ((int) (-2147483647 -1)), ((int) 2147483647)); } ret = Dl_2113929616_((*socket).sslHandle, ((int) (err))); nimln_(933, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); switch (ret) { case ((NI) 6): { nimln_(935, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_32)); } break; case ((NI) 7): case ((NI) 8): { nimln_(937, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!async) goto LA13_; nimln_(938, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA11_; LA13_: ; { nimln_(939, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_33)); } LA11_: ; } break; case ((NI) 3): case ((NI) 2): { nimln_(941, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!async) goto LA19_; nimln_(942, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA17_; LA19_: ; { nimln_(943, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_33)); } LA17_: ; } break; case ((NI) 4): { nimln_(945, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_34)); } break; case ((NI) 5): { NI32 osErr; nimln_(948, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslNoShutdown = NIM_TRUE; nimln_(949, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); osErr = osLastError__pureZos_408(); nimln_(950, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T26_; NimStringDesc* errStr; unsigned long sslErr; T26_ = (NIM_BOOL)0; T26_ = isDisconnectionError__pureZnet_171(flags, osErr); if (!!(T26_)) goto LA27_; nimln_(951, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); errStr = copyString(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_35)); nimln_(952, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); sslErr = Dl_2113929663_(); nimln_(953, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T31_; T31_ = (NIM_BOOL)0; T31_ = (sslErr == ((NU) 0)); if (!(T31_)) goto LA32_; T31_ = (err == ((NI) 0)); LA32_: ; if (!T31_) goto LA33_; nimln_(954, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); errStr = resizeString(errStr, 54); appendString(errStr, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_36)); } goto LA29_; LA33_: ; { NIM_BOOL T36_; nimln_(955, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T36_ = (NIM_BOOL)0; T36_ = (sslErr == ((NU) 0)); if (!(T36_)) goto LA37_; T36_ = (err == ((NI) -1)); LA37_: ; if (!T36_) goto LA38_; nimln_(956, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); errStr = resizeString(errStr, 16); appendString(errStr, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_37)); } goto LA29_; LA38_: ; { NimStringDesc* errStr_2; NCSTRING T41_; NimStringDesc* T42_; nimln_(958, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T41_ = (NCSTRING)0; T41_ = Dl_2113929659_(sslErr, ((NCSTRING) NIM_NIL)); errStr_2 = cstrToNimstr(T41_); nimln_(959, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T42_ = NIM_NIL; T42_ = rawNewString((errStr_2 ? errStr_2->Sup.len : 0) + (errStr_2 ? errStr_2->Sup.len : 0) + 2); appendString(T42_, errStr_2); appendString(T42_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_38)); appendString(T42_, errStr_2); raiseSSLError__pureZnet_510(T42_); } LA29_: ; nimln_(960, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(osErr, errStr); } LA27_: ; } break; case ((NI) 1): { nimln_(963, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslNoShutdown = NIM_TRUE; nimln_(964, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } break; default: { nimln_(965, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_39)); } break; } } LA7_: ; } LA3_: ; nimln_(967, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T47_; NI32 lastE; T47_ = (NIM_BOOL)0; T47_ = (err == ((NI) -1)); if (!(T47_)) goto LA48_; T47_ = !((*socket).isSsl); LA48_: ; if (!T47_) goto LA49_; nimln_(968, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(((NI) (lastError)) == ((NI) -1))) goto LA53_; lastE = getSocketError__pureZnet_1373(socket); } goto LA51_; LA53_: ; { lastE = lastError; } LA51_: ; nimln_(969, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T58_; T58_ = (NIM_BOOL)0; T58_ = isDisconnectionError__pureZnet_171(flags, lastE); if (!!(T58_)) goto LA59_; nimln_(970, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!async) goto LA63_; nimln_(976, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T67_; T67_ = (NIM_BOOL)0; T67_ = (lastE == ((int) 11)); if (T67_) goto LA68_; T67_ = (lastE == ((int) 11)); LA68_: ; if (!T67_) goto LA69_; nimln_(977, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA65_; LA69_: ; { nimln_(978, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(lastE, ((NimStringDesc*) NIM_NIL)); } LA65_: ; } goto LA61_; LA63_: ; { nimln_(979, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(lastE, ((NimStringDesc*) NIM_NIL)); } LA61_: ; } LA59_: ; } LA49_: ; }BeforeRet_: ; popFrame(); } N_LIB_PRIVATE N_NIMCALL(void, close__pureZnet_1437)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags) { TSafePoint TM__XqsrSBxhOTPgLQ9cX4MmV4A_26; TFrame* _nimCurFrame; nimfr_("close", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); _nimCurFrame = getFrame(); nimln_(1195, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); pushSafePoint(&TM__XqsrSBxhOTPgLQ9cX4MmV4A_26); TM__XqsrSBxhOTPgLQ9cX4MmV4A_26.status = setjmp(TM__XqsrSBxhOTPgLQ9cX4MmV4A_26.context); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_26.status == 0) { nimln_(1197, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = (*socket).isSsl; if (!(T3_)) goto LA4_; T3_ = !(((*socket).sslHandle == ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL))); LA4_: ; if (!T3_) goto LA5_; nimln_(1201, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T9_; int T11_; sigset_t oldSetX60gensym116_; sigset_t watchSetX60gensym116_; NIM_BOOL alreadyBlockedX60gensym116_; int T38_; TSafePoint TM__XqsrSBxhOTPgLQ9cX4MmV4A_29; int res; T9_ = (NIM_BOOL)0; T9_ = !((*socket).sslNoShutdown); if (!(T9_)) goto LA10_; T11_ = (int)0; T11_ = SSL_in_init__wrappersZopenssl_270((*socket).sslHandle); T9_ = (T11_ == ((NI32) 0)); LA10_: ; if (!T9_) goto LA12_; nimZeroMem((void*)(&oldSetX60gensym116_), sizeof(sigset_t)); nimZeroMem((void*)(&watchSetX60gensym116_), sizeof(sigset_t)); nimln_(1159, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T16_; NI32 T19_; T16_ = (int)0; T16_ = sigemptyset((&oldSetX60gensym116_)); if (!(T16_ == ((NI32) -1))) goto LA17_; nimln_(1160, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T19_ = (NI32)0; T19_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T19_, ((NimStringDesc*) NIM_NIL)); } LA17_: ; nimln_(1161, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T22_; NI32 T25_; T22_ = (int)0; T22_ = sigemptyset((&watchSetX60gensym116_)); if (!(T22_ == ((NI32) -1))) goto LA23_; nimln_(1162, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T25_ = (NI32)0; T25_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T25_, ((NimStringDesc*) NIM_NIL)); } LA23_: ; nimln_(1164, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T28_; NI32 T31_; T28_ = (int)0; T28_ = sigaddset((&watchSetX60gensym116_), ((int) 13)); if (!(T28_ == ((NI32) -1))) goto LA29_; nimln_(1165, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T31_ = (NI32)0; T31_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T31_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_27)); } LA29_: ; nimln_(1167, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T34_; NI32 T37_; nimln_(1154, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T34_ = (int)0; T34_ = pthread_sigmask(((int) 0), (&watchSetX60gensym116_), (&oldSetX60gensym116_)); if (!(T34_ == ((NI32) -1))) goto LA35_; nimln_(1168, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T37_ = (NI32)0; T37_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T37_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_28)); } LA35_: ; nimln_(1170, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T38_ = (int)0; T38_ = sigismember((&oldSetX60gensym116_), ((int) 13)); alreadyBlockedX60gensym116_ = (T38_ == ((NI32) 1)); nimln_(1180, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); pushSafePoint(&TM__XqsrSBxhOTPgLQ9cX4MmV4A_29); TM__XqsrSBxhOTPgLQ9cX4MmV4A_29.status = setjmp(TM__XqsrSBxhOTPgLQ9cX4MmV4A_29.context); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_29.status == 0) { nimln_(1207, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929869_(); nimln_(1208, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); res = Dl_2113929599_((*socket).sslHandle); nimln_(1209, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(res == ((NI32) 0))) goto LA41_; } goto LA39_; LA41_: ; { NI32 err; int sslError; nimln_(1211, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!!((res == ((NI32) 1)))) goto LA44_; nimln_(1213, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); err = osLastError__pureZos_408(); nimln_(1214, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); sslError = Dl_2113929616_((*socket).sslHandle, res); nimln_(1220, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T48_; T48_ = (NIM_BOOL)0; T48_ = (sslError == ((NI32) 6)); if (T48_) goto LA49_; nimln_(1221, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T48_ = (sslError == ((NI32) 5)); LA49_: ; if (!T48_) goto LA50_; nimln_(1224, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(err == ((NI32) 32))) goto LA54_; nimln_(1227, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int signalX60gensym116X60gensym119_; int errX60gensym116X60gensym119_; nimln_(1173, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!!(alreadyBlockedX60gensym116_)) goto LA58_; signalX60gensym116X60gensym119_ = (int)0; nimln_(1175, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); errX60gensym116X60gensym119_ = sigwait((&watchSetX60gensym116_), (&signalX60gensym116X60gensym119_)); nimln_(1176, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((errX60gensym116X60gensym119_ == ((NI32) 0)))) goto LA62_; nimln_(1177, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(errX60gensym116X60gensym119_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_30)); } LA62_: ; nimln_(1178, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((signalX60gensym116X60gensym119_ == ((int) 13)))) goto LA66_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_31)); } LA66_: ; } LA58_: ; } LA54_: ; nimln_(1230, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T70_; T70_ = (NIM_BOOL)0; T70_ = isDisconnectionError__pureZnet_171(flags, err); if (!!(T70_)) goto LA71_; nimln_(1231, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, ((NI) (res)), NIM_FALSE, err, flags); } LA71_: ; } goto LA46_; LA50_: ; { nimln_(1233, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, ((NI) (res)), NIM_FALSE, err, flags); } LA46_: ; } goto LA39_; LA44_: ; LA39_: ; popSafePoint(); } else { popSafePoint(); setFrame(_nimCurFrame); } { nimln_(1183, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!(alreadyBlockedX60gensym116_)) goto LA78_; nimln_(1184, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T82_; NI32 T85_; nimln_(1154, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T82_ = (int)0; T82_ = pthread_sigmask(((int) 1), (&watchSetX60gensym116_), (&oldSetX60gensym116_)); if (!(T82_ == ((NI32) -1))) goto LA83_; nimln_(1185, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T85_ = (NI32)0; T85_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T85_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_41)); } LA83_: ; } LA78_: ; if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_29.status != 0) nimLeaveFinally(); } if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_29.status != 0) reraiseException(); } LA12_: ; } LA5_: ; popSafePoint(); } else { popSafePoint(); setFrame(_nimCurFrame); } { nimln_(1236, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T90_; T90_ = (NIM_BOOL)0; T90_ = (*socket).isSsl; if (!(T90_)) goto LA91_; T90_ = !(((*socket).sslHandle == ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL))); LA91_: ; if (!T90_) goto LA92_; nimln_(1237, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929537_((*socket).sslHandle); nimln_(1238, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslHandle = ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL); } LA92_: ; nimln_(1240, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); close__pureZnativesockets_162((*socket).fd); nimln_(1241, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).fd = osInvalidSocket__pureZnativesockets_47; if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_26.status != 0) nimLeaveFinally(); } if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_26.status != 0) reraiseException(); popFrame(); } static N_INLINE(NIM_BOOL, isNone__pureZnativesockets_308)(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ self) { NIM_BOOL result; nimfr_("isNone", "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); result = (NIM_BOOL)0; nimln_(172, "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); nimln_(184, "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); result = !(self.has); popFrame(); return result; } static N_INLINE(NIM_BOOL, isSome__pureZnativesockets_283)(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ self) { NIM_BOOL result; nimfr_("isSome", "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); result = (NIM_BOOL)0; nimln_(157, "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); result = self.has; popFrame(); return result; } static N_INLINE(tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg*, unsafeGet__pureZnet_2024)(tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ* self) { tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg* result; nimfr_("unsafeGet", "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); result = (tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg*)0; nimln_(375, "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = isSome__pureZnativesockets_283((*self)); if (!!(T3_)) goto LA4_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_43)); } LA4_: ; nimln_(376, "/home/yyoncho/Sources/nim/Nim/lib/pure/options.nim"); result = (&(*self).val); popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*, newSocket__pureZnet_222)(int fd_0, tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg domain, tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw sockType, tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol, NIM_BOOL buffered) { tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* result; tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* T5_; nimfr_("newSocket", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = NIM_NIL; nimln_(264, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!(!((fd_0 == osInvalidSocket__pureZnativesockets_47)))) goto LA3_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_46)); } LA3_: ; nimln_(265, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T5_ = NIM_NIL; T5_ = (tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*) newObj((&NTIsocket__MkGXUPMSENeRDS7EppfLgA_), sizeof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ)); (*T5_).fd = fd_0; (*T5_).isBuffered = buffered; (*T5_).domain = domain; (*T5_).sockType = sockType; (*T5_).protocol = protocol; result = T5_; nimln_(271, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!buffered) goto LA8_; nimln_(272, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*result).currPos = ((NI) 0); } LA8_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*, dial__pureZnet_1958)(NimStringDesc* address, NU16 port, tyEnum_Protocol__dqJ1OqRGclxIMMdSLRzzXg protocol, NIM_BOOL buffered) { tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* result; tyEnum_SockType__NQT1bItGG2X9byGdrWX7ujw sockType; struct addrinfo* aiList; tyArray__JC6Xlef5rNPKoqzdesSPoQ fdPerDomain; NIM_BOOL success; NI32 lastError; struct addrinfo* it; tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg domain; int lastFd; nimfr_("dial", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = NIM_NIL; nimln_(1945, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); sockType = toSockType__pureZnativesockets_128(protocol); nimln_(1947, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); aiList = getAddrInfo__pureZnativesockets_193(address, port, ((tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg) 0), sockType, protocol); nimZeroMem((void*)fdPerDomain, sizeof(tyArray__JC6Xlef5rNPKoqzdesSPoQ)); { NI i; NI res; i = (NI)0; nimln_(90, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res = ((NI) 0); { nimln_(91, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_42; if (!(res <= ((NI) 23))) goto LA3; nimln_(1950, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((res) < ((NI) 0) || (res) > ((NI) 23)){ raiseRangeErrorI(res, ((NI) 0), ((NI) 23)); } i = ((NI) (res)); fdPerDomain[(i)- 0] = osInvalidSocket__pureZnativesockets_47; nimln_(93, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); if (nimAddInt(res, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_42)) { raiseOverflow(); }; res = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_42); } LA3: ; } } nimln_(1957, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); success = NIM_FALSE; lastError = (NI32)0; nimln_(1959, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); it = aiList; domain = (tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg)0; lastFd = (int)0; { nimln_(1962, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); while (1) { if (!!((it == ((struct addrinfo*) NIM_NIL)))) goto LA5; { tyObject_Option__FqSKP9b8yM9aV7mJ0VU4DFWQ domainOpt; tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg* T12_; nimln_(1963, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); domainOpt = toKnownDomain__pureZnativesockets_74((*it).ai_family); nimln_(1964, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T9_; T9_ = (NIM_BOOL)0; T9_ = isNone__pureZnativesockets_308(domainOpt); if (!T9_) goto LA10_; nimln_(1965, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); it = (*it).ai_next; nimln_(1966, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA6; } LA10_: ; nimln_(1967, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T12_ = (tyEnum_Domain__Q79bEtFARvq0ekDNtvj3Vqg*)0; T12_ = unsafeGet__pureZnet_2024((&domainOpt)); domain = (*T12_); nimln_(1968, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((NU)(domain) > (NU)(23)){ raiseIndexError2(domain, 23); } lastFd = fdPerDomain[(domain)- 0]; nimln_(1969, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(lastFd == osInvalidSocket__pureZnativesockets_47)) goto LA15_; nimln_(1970, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastFd = createNativeSocket__pureZnativesockets_178(domain, sockType, protocol, NIM_FALSE); nimln_(1971, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI32 err; if (!(lastFd == osInvalidSocket__pureZnativesockets_47)) goto LA19_; nimln_(1975, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); err = osLastError__pureZos_408(); nimln_(1976, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); freeaddrinfo(aiList); { NI i_2; int fd_1; NI i_3; i_2 = (NI)0; fd_1 = (int)0; nimln_(153, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); i_3 = ((NI) 0); { nimln_(154, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_44; nimln_(1977, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i_2 = i_3; fd_1 = fdPerDomain[(i_3)- 0]; { NIM_BOOL T26_; nimln_(1954, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T26_ = (NIM_BOOL)0; T26_ = !((fd_1 == osInvalidSocket__pureZnativesockets_47)); if (!(T26_)) goto LA27_; T26_ = !((((NI) (i_2)) == ((NI) -1))); LA27_: ; if (!T26_) goto LA28_; nimln_(1955, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); close__pureZnativesockets_162(fd_1); } LA28_: ; nimln_(156, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); { if (!(((NI) 23) <= ((NI) (i_3)))) goto LA32_; goto LA22; } LA32_: ; nimln_(157, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); if (nimAddInt(i_3, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_44)) { raiseOverflow(); }; if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_44 < 0 || TM__XqsrSBxhOTPgLQ9cX4MmV4A_44 > 23){ raiseOverflow(); } i_3 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_44); } } LA22: ; } nimln_(1978, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(err, ((NimStringDesc*) NIM_NIL)); } LA19_: ; nimln_(1979, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((NU)(domain) > (NU)(23)){ raiseIndexError2(domain, 23); } fdPerDomain[(domain)- 0] = lastFd; } LA15_: ; nimln_(1980, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T36_; T36_ = (int)0; T36_ = connect(lastFd, (*it).ai_addr, (*it).ai_addrlen); if (!(T36_ == ((NI32) 0))) goto LA37_; nimln_(1981, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); success = NIM_TRUE; nimln_(1982, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA4; } LA37_: ; nimln_(1983, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastError = osLastError__pureZos_408(); nimln_(1984, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); it = (*it).ai_next; } LA6: ; } LA5: ; } LA4: ; nimln_(1985, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); freeaddrinfo(aiList); { NI i_4; int fd_2; NI i_5; i_4 = (NI)0; fd_2 = (int)0; nimln_(153, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); i_5 = ((NI) 0); { nimln_(154, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_45; nimln_(1986, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i_4 = i_5; fd_2 = fdPerDomain[(i_5)- 0]; { NIM_BOOL T44_; nimln_(1954, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T44_ = (NIM_BOOL)0; T44_ = !((fd_2 == osInvalidSocket__pureZnativesockets_47)); if (!(T44_)) goto LA45_; nimln_(1986, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T44_ = !((((NI) (i_4)) == domain)); LA45_: ; if (!T44_) goto LA46_; nimln_(1955, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); close__pureZnativesockets_162(fd_2); } LA46_: ; nimln_(156, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); { if (!(((NI) 23) <= ((NI) (i_5)))) goto LA50_; goto LA40; } LA50_: ; nimln_(157, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); if (nimAddInt(i_5, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_45)) { raiseOverflow(); }; if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_45 < 0 || TM__XqsrSBxhOTPgLQ9cX4MmV4A_45 > 23){ raiseOverflow(); } i_5 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_45); } } LA40: ; } nimln_(1988, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!success) goto LA54_; nimln_(1989, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = newSocket__pureZnet_222(lastFd, domain, sockType, protocol, buffered); } goto LA52_; LA54_: ; { nimln_(1990, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!!((lastError == ((NI32) 0)))) goto LA57_; nimln_(1991, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseOSError__pureZos_405(lastError, ((NimStringDesc*) NIM_NIL)); } goto LA52_; LA57_: ; { tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw* T60_; NimStringDesc* T61_; T60_ = NIM_NIL; T60_ = (tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw*) newObj((&NTIrefioerror__HMIVdYjdZYWskTmTQVo5BQ_), sizeof(tyObject_IOError__iLZrPn9anoh9ad1MmO0RczFw)); (*T60_).Sup.Sup.Sup.m_type = (&NTIioerror__iLZrPn9anoh9ad1MmO0RczFw_); (*T60_).Sup.Sup.name = "IOError"; nimln_(1993, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T61_ = NIM_NIL; T61_ = rawNewString((address ? address->Sup.len : 0) + 26); appendString(T61_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_47)); appendString(T61_, address); asgnRef((void**) (&(*T60_).Sup.Sup.message), T61_); asgnRef((void**) (&(*T60_).Sup.Sup.parent), ((Exception*) NIM_NIL)); raiseExceptionEx((Exception*)T60_, "IOError", "dial", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 1993); } LA52_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, wrapSocket__pureZnet_1293)(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* ctx, tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket) { nimfr_("wrapSocket", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(792, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!(!((*socket).isSsl))) goto LA3_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_48)); } LA3_: ; nimln_(793, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).isSsl = NIM_TRUE; nimln_(794, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); asgnRef((void**) (&(*socket).sslContext), ctx); nimln_(795, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslHandle = Dl_2113929535_((*(*socket).sslContext).context); nimln_(796, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslNoHandshake = NIM_FALSE; nimln_(797, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslHasPeekChar = NIM_FALSE; nimln_(798, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslNoShutdown = NIM_FALSE; nimln_(799, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!((*socket).sslHandle == ((tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw*) NIM_NIL))) goto LA7_; nimln_(800, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA7_: ; nimln_(802, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T11_; T11_ = (int)0; T11_ = Dl_2113929596_((*socket).sslHandle, (*socket).fd); if (!!((T11_ == ((NI32) 1)))) goto LA12_; nimln_(803, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) NIM_NIL)); } LA12_: ; popFrame(); } static N_INLINE(NI, find__pureZos_666)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item) { NI result; nimfr_("find", "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); { result = (NI)0; nimln_(1847, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); result = ((NI) 0); { NIM_CHAR i; NI i_2; i = (NIM_CHAR)0; nimln_(21, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); i_2 = ((NI) 0); { nimln_(22, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_51; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_52; if (!(i_2 < aLen_0)) goto LA3; nimln_(1848, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); if (i_2 < 0 || i_2 >= aLen_0){ raiseIndexError2(i_2,aLen_0-1); } i = a[i_2]; { nimln_(1849, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); if (!((NU8)(i) == (NU8)(item))) goto LA6_; goto BeforeRet_; } LA6_: ; nimln_(1848, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); if (nimAddInt(result, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_51)) { raiseOverflow(); }; result = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_51); nimln_(24, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); if (nimAddInt(i_2, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_52)) { raiseOverflow(); }; i_2 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_52); } LA3: ; } } nimln_(1851, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); result = ((NI) -1); }BeforeRet_: ; popFrame(); return result; } static N_INLINE(NIM_BOOL, contains__pureZos_661)(NIM_CHAR* a, NI aLen_0, NIM_CHAR item) { NIM_BOOL result; NI T1_; nimfr_("contains", "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); { result = (NIM_BOOL)0; nimln_(1865, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); T1_ = (NI)0; T1_ = find__pureZos_666(a, aLen_0, item); result = (((NI) 0) <= T1_); goto BeforeRet_; }BeforeRet_: ; popFrame(); return result; } static N_INLINE(NimStringDesc*, X5BX5D___pureZunicode_867)(NimStringDesc* s, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) { NimStringDesc* result; NI a; NI L; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_80; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_81; nimfr_("[]", "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); result = NIM_NIL; nimln_(2582, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); a = x.a; nimln_(2583, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); if (nimSubInt(x.b, a, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_80)) { raiseOverflow(); }; if (nimAddInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_80), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_81)) { raiseOverflow(); }; L = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_81); nimln_(2584, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); if ((L) < ((NI) 0) || (L) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI(L, ((NI) 0), ((NI) IL64(9223372036854775807))); } result = mnewString(((NI) (L))); { NI i; NI i_2; i = (NI)0; nimln_(119, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); i_2 = ((NI) 0); { nimln_(120, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_82; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_83; if (!(i_2 < L)) goto LA3; nimln_(2585, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); i = i_2; if (i < 0 || i >= (result ? result->Sup.len : 0)){ raiseIndexError2(i,(result ? result->Sup.len : 0)-1); } if (nimAddInt(i, a, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_82)) { raiseOverflow(); }; if ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_82) < 0 || (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_82) >= (s ? s->Sup.len : 0)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_82),(s ? s->Sup.len : 0)-1); } result->data[i] = s->data[(NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_82)]; nimln_(122, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); if (nimAddInt(i_2, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_83)) { raiseOverflow(); }; i_2 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_83); } LA3: ; } } popFrame(); return result; } static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___pureZunicode_842)(NI a, NI b) { tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result; nimfr_("..", "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA)); nimln_(522, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA)); result.a = a; result.b = b; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA, parseIPv6Address__pureZnet_329)(NimStringDesc* addressStr) { tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA result; NI groupCount; NI currentGroupStart; NU32 currentShort; NIM_BOOL separatorValid; NI dualColonGroup; NIM_BOOL lastWasColon; NI v4StartPos; NI byteCount; nimfr_("parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimZeroMem((void*)(&result), sizeof(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA)); nimln_(352, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimZeroMem((void*)(&result), sizeof(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA)); result.family = ((tyEnum_IpAddressFamily__iqqacz9cr9bcNjYY74E10wPA) 0); nimln_(353, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T5_; NimStringDesc* T6_; if (!((addressStr ? addressStr->Sup.len : 0) < ((NI) 2))) goto LA3_; T5_ = NIM_NIL; T5_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T5_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T5_).Sup.Sup.name = "ValueError"; T6_ = NIM_NIL; T6_ = (*T5_).Sup.Sup.message; (*T5_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_53)); if (T6_) nimGCunrefNoCycle(T6_); asgnRef((void**) (&(*T5_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(354, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T5_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 354); } LA3_: ; nimln_(357, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); groupCount = ((NI) 0); nimln_(358, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentGroupStart = ((NI) 0); nimln_(359, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentShort = ((NU32) 0); nimln_(360, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_TRUE; nimln_(361, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); dualColonGroup = ((NI) -1); nimln_(362, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastWasColon = NIM_FALSE; nimln_(363, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); v4StartPos = ((NI) -1); nimln_(364, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); byteCount = ((NI) 0); { NI i; NIM_CHAR c; NI i_2; NI L; i = (NI)0; c = (NIM_CHAR)0; nimln_(190, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); i_2 = ((NI) 0); nimln_(191, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); L = (addressStr ? addressStr->Sup.len : 0); { nimln_(192, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_74; if (!(i_2 < L)) goto LA9; nimln_(366, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i = i_2; if (i_2 < 0 || i_2 >= (addressStr ? addressStr->Sup.len : 0)){ raiseIndexError2(i_2,(addressStr ? addressStr->Sup.len : 0)-1); } c = addressStr->data[i_2]; { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_68; nimln_(367, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!((NU8)(c) == (NU8)(58))) goto LA12_; nimln_(368, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T18_; NimStringDesc* T19_; if (!!(separatorValid)) goto LA16_; T18_ = NIM_NIL; T18_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T18_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T18_).Sup.Sup.name = "ValueError"; T19_ = NIM_NIL; T19_ = (*T18_).Sup.Sup.message; (*T18_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_54)); if (T19_) nimGCunrefNoCycle(T19_); asgnRef((void**) (&(*T18_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(369, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T18_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 369); } LA16_: ; nimln_(371, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!lastWasColon) goto LA22_; nimln_(372, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T28_; NimStringDesc* T29_; if (!!((dualColonGroup == ((NI) -1)))) goto LA26_; T28_ = NIM_NIL; T28_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T28_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T28_).Sup.Sup.name = "ValueError"; T29_ = NIM_NIL; T29_ = (*T28_).Sup.Sup.message; (*T28_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_55)); if (T29_) nimGCunrefNoCycle(T29_); asgnRef((void**) (&(*T28_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(373, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T28_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 373); } LA26_: ; nimln_(375, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); dualColonGroup = groupCount; nimln_(376, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_FALSE; } goto LA20_; LA22_: ; { NIM_BOOL T31_; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_61; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_62; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_63; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_64; nimln_(377, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T31_ = (NIM_BOOL)0; T31_ = !((i == ((NI) 0))); if (!(T31_)) goto LA32_; T31_ = !((i == ((addressStr ? addressStr->Sup.len : 0)-1))); LA32_: ; if (!T31_) goto LA33_; nimln_(378, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T39_; NimStringDesc* T40_; if (!(((NI) 8) <= groupCount)) goto LA37_; T39_ = NIM_NIL; T39_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T39_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T39_).Sup.Sup.name = "ValueError"; T40_ = NIM_NIL; T40_ = (*T39_).Sup.Sup.message; (*T39_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_56)); if (T40_) nimGCunrefNoCycle(T40_); asgnRef((void**) (&(*T39_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(379, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T39_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 379); } LA37_: ; if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(381, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_61)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_61)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_61), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_61))- 0] = ((NU8) ((NU32)((NU32)(currentShort) >> (NU64)(((NI) 8))))); if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(382, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_62)) { raiseOverflow(); }; if (nimAddInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_62), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_63)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_63)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_63), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_63))- 0] = ((NU8) ((NU32)(currentShort & ((NU32) 255)))); nimln_(383, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentShort = ((NU32) 0); nimln_(384, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(groupCount, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_64)) { raiseOverflow(); }; groupCount = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_64); nimln_(385, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((dualColonGroup == ((NI) -1)))) goto LA43_; separatorValid = NIM_FALSE; } LA43_: ; } goto LA20_; LA33_: ; { nimln_(386, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(i == ((NI) 0))) goto LA46_; nimln_(387, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T52_; NimStringDesc* T53_; if (((NI) 1) < 0 || ((NI) 1) >= (addressStr ? addressStr->Sup.len : 0)){ raiseIndexError2(((NI) 1),(addressStr ? addressStr->Sup.len : 0)-1); } if (!!(((NU8)(addressStr->data[((NI) 1)]) == (NU8)(58)))) goto LA50_; T52_ = NIM_NIL; T52_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T52_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T52_).Sup.Sup.name = "ValueError"; T53_ = NIM_NIL; T53_ = (*T52_).Sup.Sup.message; (*T52_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_65)); if (T53_) nimGCunrefNoCycle(T53_); asgnRef((void**) (&(*T52_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(388, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T52_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 388); } LA50_: ; } goto LA20_; LA46_: ; { nimln_(391, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_66; tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T59_; NimStringDesc* T60_; if (nimSubInt(((addressStr ? addressStr->Sup.len : 0)-1), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_66)) { raiseOverflow(); }; if ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_66) < 0 || (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_66) >= (addressStr ? addressStr->Sup.len : 0)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_66),(addressStr ? addressStr->Sup.len : 0)-1); } if (!!(((NU8)(addressStr->data[(NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_66)]) == (NU8)(58)))) goto LA57_; T59_ = NIM_NIL; T59_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T59_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T59_).Sup.Sup.name = "ValueError"; T60_ = NIM_NIL; T60_ = (*T59_).Sup.Sup.message; (*T59_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_67)); if (T60_) nimGCunrefNoCycle(T60_); asgnRef((void**) (&(*T59_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(392, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T59_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 392); } LA57_: ; } LA20_: ; nimln_(394, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastWasColon = NIM_TRUE; nimln_(395, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(i, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_68)) { raiseOverflow(); }; currentGroupStart = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_68); } goto LA10_; LA12_: ; { nimln_(396, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!((NU8)(c) == (NU8)(46))) goto LA62_; nimln_(397, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T66_; NIM_BOOL T67_; tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T72_; NimStringDesc* T73_; T66_ = (NIM_BOOL)0; T67_ = (NIM_BOOL)0; T67_ = (i < ((NI) 3)); if (T67_) goto LA68_; T67_ = !(separatorValid); LA68_: ; T66_ = T67_; if (T66_) goto LA69_; T66_ = (((NI) 7) <= groupCount); LA69_: ; if (!T66_) goto LA70_; T72_ = NIM_NIL; T72_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T72_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T72_).Sup.Sup.name = "ValueError"; T73_ = NIM_NIL; T73_ = (*T72_).Sup.Sup.message; (*T72_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_53)); if (T73_) nimGCunrefNoCycle(T73_); asgnRef((void**) (&(*T72_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(398, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T72_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 398); } LA70_: ; nimln_(399, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); v4StartPos = currentGroupStart; nimln_(400, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentShort = ((NU32) 0); nimln_(401, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_FALSE; nimln_(402, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto LA7; } goto LA10_; LA62_: ; { nimln_(403, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(((NU8)(c)) >= ((NU8)(48)) && ((NU8)(c)) <= ((NU8)(57)) || ((NU8)(c)) >= ((NU8)(65)) && ((NU8)(c)) <= ((NU8)(70)) || ((NU8)(c)) >= ((NU8)(97)) && ((NU8)(c)) <= ((NU8)(102)))) goto LA75_; nimln_(404, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_69; if (!(((NU8)(c)) >= ((NU8)(48)) && ((NU8)(c)) <= ((NU8)(57)))) goto LA79_; nimln_(405, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(((NU8)(c)), ((NI) 48), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_69)) { raiseOverflow(); }; currentShort = (NU32)((NU32)((NU32)((NU64)(currentShort) << (NU64)(((NI) 4)))) + (NU32)(((NU32) ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_69))))); } goto LA77_; LA79_: ; { NIM_BOOL T82_; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_70; nimln_(406, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T82_ = (NIM_BOOL)0; T82_ = ((NU8)(97) <= (NU8)(c)); if (!(T82_)) goto LA83_; T82_ = ((NU8)(c) <= (NU8)(102)); LA83_: ; if (!T82_) goto LA84_; nimln_(407, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(((NU8)(c)), ((NI) 97), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_70)) { raiseOverflow(); }; currentShort = (NU32)((NU32)((NU32)((NU32)((NU32)((NU64)(currentShort) << (NU64)(((NI) 4)))) + (NU32)(((NU32) ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_70)))))) + (NU32)(((NU32) 10))); } goto LA77_; LA84_: ; { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_71; nimln_(409, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(((NU8)(c)), ((NI) 65), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_71)) { raiseOverflow(); }; currentShort = (NU32)((NU32)((NU32)((NU32)((NU32)((NU64)(currentShort) << (NU64)(((NI) 4)))) + (NU32)(((NU32) ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_71)))))) + (NU32)(((NU32) 10))); } LA77_: ; nimln_(410, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T91_; NimStringDesc* T92_; if (!((NU32)(((NU32) 65535)) < (NU32)(currentShort))) goto LA89_; T91_ = NIM_NIL; T91_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T91_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T91_).Sup.Sup.name = "ValueError"; T92_ = NIM_NIL; T92_ = (*T91_).Sup.Sup.message; (*T91_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_72)); if (T92_) nimGCunrefNoCycle(T92_); asgnRef((void**) (&(*T91_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(411, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T91_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 411); } LA89_: ; nimln_(413, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastWasColon = NIM_FALSE; nimln_(414, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_TRUE; } goto LA10_; LA75_: ; { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T94_; NimStringDesc* T95_; T94_ = NIM_NIL; T94_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T94_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T94_).Sup.Sup.name = "ValueError"; T95_ = NIM_NIL; T95_ = (*T94_).Sup.Sup.message; (*T94_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_73)); if (T95_) nimGCunrefNoCycle(T95_); asgnRef((void**) (&(*T94_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(416, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T94_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 416); } LA10_: ; nimln_(194, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); if (nimAddInt(i_2, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_74)) { raiseOverflow(); }; i_2 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_74); nimln_(195, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); { if (!!(((addressStr ? addressStr->Sup.len : 0) == L))) goto LA98_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_75)); } LA98_: ; } LA9: ; } } LA7: ; nimln_(420, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(v4StartPos == ((NI) -1))) goto LA102_; nimln_(421, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_76; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_77; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_78; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_79; if (!separatorValid) goto LA106_; nimln_(422, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T112_; NimStringDesc* T113_; if (!(((NI) 8) <= groupCount)) goto LA110_; T112_ = NIM_NIL; T112_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T112_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T112_).Sup.Sup.name = "ValueError"; T113_ = NIM_NIL; T113_ = (*T112_).Sup.Sup.message; (*T112_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_56)); if (T113_) nimGCunrefNoCycle(T113_); asgnRef((void**) (&(*T112_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(423, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T112_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 423); } LA110_: ; if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(425, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_76)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_76)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_76), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_76))- 0] = ((NU8) ((NU32)((NU32)(currentShort) >> (NU64)(((NI) 8))))); if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(426, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_77)) { raiseOverflow(); }; if (nimAddInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_77), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_78)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_78)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_78), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_78))- 0] = ((NU8) ((NU32)(currentShort & ((NU32) 255)))); nimln_(427, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(groupCount, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_79)) { raiseOverflow(); }; groupCount = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_79); } LA106_: ; } goto LA100_; LA102_: ; { NIM_BOOL leadingZero; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_90; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_91; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_92; nimln_(429, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); leadingZero = NIM_FALSE; { NI i_3; NIM_CHAR c_2; NimStringDesc* colontmp_; tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T116_; NI i_4; NI L_2; i_3 = (NI)0; c_2 = (NIM_CHAR)0; colontmp_ = NIM_NIL; nimln_(430, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T116_ = dotdot___pureZunicode_842(v4StartPos, ((addressStr ? addressStr->Sup.len : 0)-1)); colontmp_ = X5BX5D___pureZunicode_867(addressStr, T116_); nimln_(190, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); i_4 = ((NI) 0); nimln_(191, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); L_2 = (colontmp_ ? colontmp_->Sup.len : 0); { nimln_(192, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_89; if (!(i_4 < L_2)) goto LA118; nimln_(430, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i_3 = i_4; if (i_4 < 0 || i_4 >= (colontmp_ ? colontmp_->Sup.len : 0)){ raiseIndexError2(i_4,(colontmp_ ? colontmp_->Sup.len : 0)-1); } c_2 = colontmp_->data[i_4]; { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_85; nimln_(431, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(((NU8)(c_2)) >= ((NU8)(48)) && ((NU8)(c_2)) <= ((NU8)(57)))) goto LA121_; nimln_(432, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T127_; NimStringDesc* T128_; if (!leadingZero) goto LA125_; T127_ = NIM_NIL; T127_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T127_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T127_).Sup.Sup.name = "ValueError"; T128_ = NIM_NIL; T128_ = (*T127_).Sup.Sup.message; (*T127_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_84)); if (T128_) nimGCunrefNoCycle(T128_); asgnRef((void**) (&(*T127_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(433, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T127_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 433); } LA125_: ; nimln_(435, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(((NU8)(c_2)), ((NI) 48), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_85)) { raiseOverflow(); }; currentShort = (NU32)((NU32)((NU32)((NU32)(currentShort) * (NU32)(((NU32) 10)))) + (NU32)(((NU32) ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_85))))); nimln_(436, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(currentShort == ((NU32) 0))) goto LA131_; nimln_(437, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); leadingZero = NIM_TRUE; } goto LA129_; LA131_: ; { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T136_; NimStringDesc* T137_; nimln_(438, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!((NU32)(((NU32) 255)) < (NU32)(currentShort))) goto LA134_; T136_ = NIM_NIL; T136_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T136_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T136_).Sup.Sup.name = "ValueError"; T137_ = NIM_NIL; T137_ = (*T136_).Sup.Sup.message; (*T136_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_72)); if (T137_) nimGCunrefNoCycle(T137_); asgnRef((void**) (&(*T136_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(439, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T136_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 439); } goto LA129_; LA134_: ; LA129_: ; nimln_(441, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_TRUE; } goto LA119_; LA121_: ; { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_86; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_87; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_88; nimln_(442, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!((NU8)(c_2) == (NU8)(46))) goto LA139_; nimln_(443, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T143_; tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T147_; NimStringDesc* T148_; T143_ = (NIM_BOOL)0; T143_ = !(separatorValid); if (T143_) goto LA144_; T143_ = (((NI) 3) <= byteCount); LA144_: ; if (!T143_) goto LA145_; T147_ = NIM_NIL; T147_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T147_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T147_).Sup.Sup.name = "ValueError"; T148_ = NIM_NIL; T148_ = (*T147_).Sup.Sup.message; (*T147_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_53)); if (T148_) nimGCunrefNoCycle(T148_); asgnRef((void**) (&(*T147_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(444, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T147_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 444); } LA145_: ; if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(445, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_86)) { raiseOverflow(); }; if (nimAddInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_86), byteCount, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_87)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_87)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_87), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_87))- 0] = ((NU8) (currentShort)); nimln_(446, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentShort = ((NU32) 0); nimln_(447, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(byteCount, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_88)) { raiseOverflow(); }; byteCount = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_88); nimln_(448, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_FALSE; nimln_(449, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); leadingZero = NIM_FALSE; } goto LA119_; LA139_: ; { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T150_; NimStringDesc* T151_; T150_ = NIM_NIL; T150_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T150_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T150_).Sup.Sup.name = "ValueError"; T151_ = NIM_NIL; T151_ = (*T150_).Sup.Sup.message; (*T150_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_73)); if (T151_) nimGCunrefNoCycle(T151_); asgnRef((void**) (&(*T150_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(451, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T150_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 451); } LA119_: ; nimln_(194, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); if (nimAddInt(i_4, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_89)) { raiseOverflow(); }; i_4 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_89); nimln_(195, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators.nim"); { if (!!(((colontmp_ ? colontmp_->Sup.len : 0) == L_2))) goto LA154_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_75)); } LA154_: ; } LA118: ; } } nimln_(454, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T158_; tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T162_; NimStringDesc* T163_; T158_ = (NIM_BOOL)0; T158_ = !((byteCount == ((NI) 3))); if (T158_) goto LA159_; T158_ = !(separatorValid); LA159_: ; if (!T158_) goto LA160_; T162_ = NIM_NIL; T162_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T162_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T162_).Sup.Sup.name = "ValueError"; T163_ = NIM_NIL; T163_ = (*T162_).Sup.Sup.message; (*T162_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_53)); if (T163_) nimGCunrefNoCycle(T163_); asgnRef((void**) (&(*T162_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(455, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T162_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 455); } LA160_: ; if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(456, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_90)) { raiseOverflow(); }; if (nimAddInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_90), byteCount, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_91)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_91)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_91), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_91))- 0] = ((NU8) (currentShort)); nimln_(457, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_92)) { raiseOverflow(); }; groupCount = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_92); } LA100_: ; nimln_(460, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T168_; NimStringDesc* T169_; if (!(((NI) 8) < groupCount)) goto LA166_; T168_ = NIM_NIL; T168_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T168_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T168_).Sup.Sup.name = "ValueError"; T169_ = NIM_NIL; T169_ = (*T168_).Sup.Sup.message; (*T168_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_56)); if (T169_) nimGCunrefNoCycle(T169_); asgnRef((void**) (&(*T168_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(461, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T168_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 461); } goto LA164_; LA166_: ; { NI toFill; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_94; NI toShift; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_95; nimln_(463, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(groupCount < ((NI) 8))) goto LA171_; nimln_(464, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T177_; NimStringDesc* T178_; if (!(dualColonGroup == ((NI) -1))) goto LA175_; T177_ = NIM_NIL; T177_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T177_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T177_).Sup.Sup.name = "ValueError"; T178_ = NIM_NIL; T178_ = (*T177_).Sup.Sup.message; (*T177_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_93)); if (T178_) nimGCunrefNoCycle(T178_); asgnRef((void**) (&(*T177_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(465, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T177_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 465); } LA175_: ; nimln_(467, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(((NI) 8), groupCount, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_94)) { raiseOverflow(); }; toFill = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_94); nimln_(468, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(groupCount, dualColonGroup, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_95)) { raiseOverflow(); }; toShift = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_95); { NI i_5; NI colontmp__2; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_96; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_97; NI res; i_5 = (NI)0; colontmp__2 = (NI)0; nimln_(469, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(((NI) 2), toShift, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_96)) { raiseOverflow(); }; if (nimSubInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_96), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_97)) { raiseOverflow(); }; colontmp__2 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_97); nimln_(90, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res = ((NI) 0); { nimln_(91, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_98; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_99; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_100; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_101; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_102; if (!(res <= colontmp__2)) goto LA181; nimln_(469, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i_5 = res; if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(470, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(((NI) 15), i_5, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_98)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_98)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_98), 15); } nimln_(469, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(470, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(groupCount, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_99)) { raiseOverflow(); }; if (nimSubInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_99), i_5, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_100)) { raiseOverflow(); }; if (nimSubInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_100), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_101)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_101)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_101), 15); } result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_98))- 0] = result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_101))- 0]; nimln_(93, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); if (nimAddInt(res, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_102)) { raiseOverflow(); }; res = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_102); } LA181: ; } } { NI i_6; NI colontmp__3; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_103; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_104; NI res_2; i_6 = (NI)0; colontmp__3 = (NI)0; nimln_(471, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(((NI) 2), toFill, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_103)) { raiseOverflow(); }; if (nimSubInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_103), ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_104)) { raiseOverflow(); }; colontmp__3 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_104); nimln_(90, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res_2 = ((NI) 0); { nimln_(91, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_105; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_106; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_107; if (!(res_2 <= colontmp__3)) goto LA184; nimln_(471, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i_6 = res_2; if (!(((1 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_57), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } nimln_(472, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimMulInt(dualColonGroup, ((NI) 2), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_105)) { raiseOverflow(); }; if (nimAddInt((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_105), i_6, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_106)) { raiseOverflow(); }; if ((NU)((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_106)) > (NU)(15)){ raiseIndexError2((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_106), 15); } nimln_(471, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result._family_1.address_v6[((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_106))- 0] = ((NU8) 0); nimln_(93, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); if (nimAddInt(res_2, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_107)) { raiseOverflow(); }; res_2 = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_107); } LA184: ; } } } goto LA164_; LA171_: ; { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T188_; NimStringDesc* T189_; nimln_(473, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!!((dualColonGroup == ((NI) -1)))) goto LA186_; T188_ = NIM_NIL; T188_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T188_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T188_).Sup.Sup.name = "ValueError"; T189_ = NIM_NIL; T189_ = (*T188_).Sup.Sup.message; (*T188_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_56)); if (T189_) nimGCunrefNoCycle(T189_); asgnRef((void**) (&(*T188_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(474, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T188_, "ValueError", "parseIPv6Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 474); } goto LA164_; LA186_: ; LA164_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA, parseIPv4Address__pureZnet_277)(NimStringDesc* addressStr) { tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA result; NI byteCount; NU16 currentByte; NIM_BOOL separatorValid; NIM_BOOL leadingZero; nimfr_("parseIPv4Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimZeroMem((void*)(&result), sizeof(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA)); nimln_(312, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); byteCount = ((NI) 0); nimln_(313, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentByte = ((NU16) 0); nimln_(314, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_FALSE; nimln_(315, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); leadingZero = NIM_FALSE; nimln_(317, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimZeroMem((void*)(&result), sizeof(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA)); result.family = ((tyEnum_IpAddressFamily__iqqacz9cr9bcNjYY74E10wPA) 1); { NI i; NI colontmp_; NI res; i = (NI)0; colontmp_ = (NI)0; nimln_(319, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); colontmp_ = ((addressStr ? addressStr->Sup.len : 0)-1); nimln_(90, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); res = ((NI) 0); { nimln_(91, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); while (1) { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_112; if (!(res <= colontmp_)) goto LA3; nimln_(319, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); i = res; { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_109; nimln_(320, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (i < 0 || i >= (addressStr ? addressStr->Sup.len : 0)){ raiseIndexError2(i,(addressStr ? addressStr->Sup.len : 0)-1); } if (!(((NU8)(addressStr->data[i])) >= ((NU8)(48)) && ((NU8)(addressStr->data[i])) <= ((NU8)(57)))) goto LA6_; nimln_(321, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T12_; NimStringDesc* T13_; if (!leadingZero) goto LA10_; T12_ = NIM_NIL; T12_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T12_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T12_).Sup.Sup.name = "ValueError"; T13_ = NIM_NIL; T13_ = (*T12_).Sup.Sup.message; (*T12_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_108)); if (T13_) nimGCunrefNoCycle(T13_); asgnRef((void**) (&(*T12_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(322, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T12_, "ValueError", "parseIPv4Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 322); } LA10_: ; nimln_(324, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(325, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (i < 0 || i >= (addressStr ? addressStr->Sup.len : 0)){ raiseIndexError2(i,(addressStr ? addressStr->Sup.len : 0)-1); } if (nimSubInt(((NU8)(addressStr->data[i])), ((NI) 48), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_109)) { raiseOverflow(); }; currentByte = (NU16)((NU16)((NU16)((NU16)(currentByte) * (NU16)(((NU16) 10)))) + (NU16)(((NU16) ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_109))))); nimln_(326, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(currentByte == ((NU16) 0))) goto LA16_; nimln_(327, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); leadingZero = NIM_TRUE; } goto LA14_; LA16_: ; { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T21_; NimStringDesc* T22_; nimln_(328, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!((NU16)(((NU16) 255)) < (NU16)(currentByte))) goto LA19_; T21_ = NIM_NIL; T21_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T21_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T21_).Sup.Sup.name = "ValueError"; T22_ = NIM_NIL; T22_ = (*T21_).Sup.Sup.message; (*T21_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_72)); if (T22_) nimGCunrefNoCycle(T22_); asgnRef((void**) (&(*T21_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(329, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T21_, "ValueError", "parseIPv4Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 329); } goto LA14_; LA19_: ; LA14_: ; nimln_(331, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_TRUE; } goto LA4_; LA6_: ; { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_111; nimln_(332, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (i < 0 || i >= (addressStr ? addressStr->Sup.len : 0)){ raiseIndexError2(i,(addressStr ? addressStr->Sup.len : 0)-1); } if (!((NU8)(addressStr->data[i]) == (NU8)(46))) goto LA24_; nimln_(333, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T28_; tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T32_; NimStringDesc* T33_; T28_ = (NIM_BOOL)0; T28_ = !(separatorValid); if (T28_) goto LA29_; T28_ = (((NI) 3) <= byteCount); LA29_: ; if (!T28_) goto LA30_; T32_ = NIM_NIL; T32_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T32_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T32_).Sup.Sup.name = "ValueError"; T33_ = NIM_NIL; T33_ = (*T32_).Sup.Sup.message; (*T32_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_56)); if (T33_) nimGCunrefNoCycle(T33_); asgnRef((void**) (&(*T32_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(334, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T32_, "ValueError", "parseIPv4Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 334); } LA30_: ; if (!(((2 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_110), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } if ((NU)(byteCount) > (NU)(3)){ raiseIndexError2(byteCount, 3); } nimln_(336, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result._family_2.address_v4[(byteCount)- 0] = ((NU8) (currentByte)); nimln_(337, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); currentByte = ((NU16) 0); nimln_(338, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(byteCount, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_111)) { raiseOverflow(); }; byteCount = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_111); nimln_(339, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); separatorValid = NIM_FALSE; nimln_(340, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); leadingZero = NIM_FALSE; } goto LA4_; LA24_: ; { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T35_; NimStringDesc* T36_; T35_ = NIM_NIL; T35_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T35_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T35_).Sup.Sup.name = "ValueError"; T36_ = NIM_NIL; T36_ = (*T35_).Sup.Sup.message; (*T35_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_73)); if (T36_) nimGCunrefNoCycle(T36_); asgnRef((void**) (&(*T35_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(342, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T35_, "ValueError", "parseIPv4Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 342); } LA4_: ; nimln_(93, "/home/yyoncho/Sources/nim/Nim/lib/system/iterators_1.nim"); if (nimAddInt(res, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_112)) { raiseOverflow(); }; res = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_112); } LA3: ; } } nimln_(345, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T39_; tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T43_; NimStringDesc* T44_; T39_ = (NIM_BOOL)0; T39_ = !((byteCount == ((NI) 3))); if (T39_) goto LA40_; T39_ = !(separatorValid); LA40_: ; if (!T39_) goto LA41_; T43_ = NIM_NIL; T43_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T43_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T43_).Sup.Sup.name = "ValueError"; T44_ = NIM_NIL; T44_ = (*T43_).Sup.Sup.message; (*T43_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_53)); if (T44_) nimGCunrefNoCycle(T44_); asgnRef((void**) (&(*T43_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(346, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T43_, "ValueError", "parseIPv4Address", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 346); } LA41_: ; if (!(((2 &((NU8)1<<((NU)(result.family)&7U)))!=0))) { raiseFieldError2(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_110), reprDiscriminant(((NI)result.family) + (NI)IL64(0), (&NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_))); } if ((NU)(byteCount) > (NU)(3)){ raiseIndexError2(byteCount, 3); } nimln_(347, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result._family_2.address_v4[(byteCount)- 0] = ((NU8) (currentByte)); popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA, parseIpAddress__pureZnet_465)(NimStringDesc* addressStr) { tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA result; nimfr_("parseIpAddress", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimZeroMem((void*)(&result), sizeof(tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA)); nimln_(485, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw* T5_; NimStringDesc* T6_; if (!((addressStr ? addressStr->Sup.len : 0) == ((NI) 0))) goto LA3_; T5_ = NIM_NIL; T5_ = (tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw*) newObj((&NTIrefvalueerror__Ie1m0dv1ZHg72IgPRr1cDw_), sizeof(tyObject_ValueError__yoNlBGx0D2tRizIdhQuENw)); (*T5_).Sup.Sup.Sup.m_type = (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_); (*T5_).Sup.Sup.name = "ValueError"; T6_ = NIM_NIL; T6_ = (*T5_).Sup.Sup.message; (*T5_).Sup.Sup.message = copyStringRC1(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_50)); if (T6_) nimGCunrefNoCycle(T6_); asgnRef((void**) (&(*T5_).Sup.Sup.parent), ((Exception*) NIM_NIL)); nimln_(486, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseExceptionEx((Exception*)T5_, "ValueError", "parseIpAddress", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 486); } LA3_: ; nimln_(487, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T9_; T9_ = (NIM_BOOL)0; T9_ = contains__pureZos_661(addressStr->data, (addressStr ? addressStr->Sup.len : 0), 58); if (!T9_) goto LA10_; nimln_(488, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = parseIPv6Address__pureZnet_329(addressStr); goto BeforeRet_; } goto LA7_; LA10_: ; { nimln_(490, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = parseIPv4Address__pureZnet_277(addressStr); goto BeforeRet_; } LA7_: ; }BeforeRet_: ; popFrame(); return result; } static N_INLINE(Exception*, nimBorrowCurrentException)(void) { Exception* result; nimfr_("nimBorrowCurrentException", "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); result = NIM_NIL; nimln_(2436, "/home/yyoncho/Sources/nim/Nim/lib/system.nim"); result = currException__system_3096; popFrame(); return result; } static N_INLINE(void, popCurrentException)(void) { asgnRef((void**) (&currException__system_3096), (*currException__system_3096).up); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isIpAddress__pureZnet_473)(NimStringDesc* addressStr) { NIM_BOOL result; TSafePoint TM__XqsrSBxhOTPgLQ9cX4MmV4A_49; tyObject_IpAddress__t0yd6ha54oWXm7nwZ4QqfA T1_; TFrame* _nimCurFrame; nimfr_("isIpAddress", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { _nimCurFrame = getFrame(); result = (NIM_BOOL)0; nimln_(495, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); pushSafePoint(&TM__XqsrSBxhOTPgLQ9cX4MmV4A_49); TM__XqsrSBxhOTPgLQ9cX4MmV4A_49.status = setjmp(TM__XqsrSBxhOTPgLQ9cX4MmV4A_49.context); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_49.status == 0) { nimln_(496, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T1_ = parseIpAddress__pureZnet_465(addressStr); (void)(T1_); popSafePoint(); } else { popSafePoint(); setFrame(_nimCurFrame); if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIvalueerror__yoNlBGx0D2tRizIdhQuENw_))) { TM__XqsrSBxhOTPgLQ9cX4MmV4A_49.status = 0; nimln_(498, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = NIM_FALSE; popCurrentException(); goto BeforeRet_; popCurrentException(); } } if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_49.status != 0) reraiseException(); nimln_(499, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = NIM_TRUE; goto BeforeRet_; }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, checkCertName__pureZnet_1305)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NimStringDesc* hostname) { TSafePoint TM__XqsrSBxhOTPgLQ9cX4MmV4A_114; tyObject_SslStruct__hZKic6WnTBMq6Usbg49bnhw* certificate; int match; TFrame* _nimCurFrame; nimfr_("checkCertName", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); _nimCurFrame = getFrame(); nimln_(810, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((*socket).isSsl)) goto LA3_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_113)); } LA3_: ; nimln_(811, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); pushSafePoint(&TM__XqsrSBxhOTPgLQ9cX4MmV4A_114); TM__XqsrSBxhOTPgLQ9cX4MmV4A_114.status = setjmp(TM__XqsrSBxhOTPgLQ9cX4MmV4A_114.context); if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_114.status == 0) { nimln_(812, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); certificate = Dl_2113930115_((*socket).sslHandle); nimln_(813, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(certificate == 0)) goto LA7_; nimln_(814, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_115)); } LA7_: ; nimln_(818, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (((hostname ? hostname->Sup.len : 0)) < ((int) (-2147483647 -1)) || ((hostname ? hostname->Sup.len : 0)) > ((int) 2147483647)){ raiseRangeErrorI((hostname ? hostname->Sup.len : 0), ((int) (-2147483647 -1)), ((int) 2147483647)); } match = Dl_2113930130_(certificate, nimToCStringConv(hostname), ((int) ((hostname ? hostname->Sup.len : 0))), ((unsigned int) 1), ((NCSTRING) NIM_NIL)); nimln_(821, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113930136_(certificate); nimln_(822, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((match == ((NI32) 1)))) goto LA11_; nimln_(823, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_116)); } LA11_: ; popSafePoint(); } else { popSafePoint(); setFrame(_nimCurFrame); if (isObj(nimBorrowCurrentException()->Sup.m_type, (&NTIlibraryerror__x1muge9crz9aAVqWWUrEL9aXg_))) { TM__XqsrSBxhOTPgLQ9cX4MmV4A_114.status = 0; nimln_(826, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); raiseSSLError__pureZnet_510(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_117)); popCurrentException(); } } if (TM__XqsrSBxhOTPgLQ9cX4MmV4A_114.status != 0) reraiseException(); popFrame(); } N_LIB_PRIVATE N_NIMCALL(void, wrapConnectedSocket__pureZnet_1319)(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w* ctx, tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, tyEnum_SslHandshakeType__9aZhh5f9bRDKgYB8GLASDSqg handshake, NimStringDesc* hostname) { nimfr_("wrapConnectedSocket", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(842, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); wrapSocket__pureZnet_1293(ctx, socket); nimln_(843, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); switch (handshake) { case ((tyEnum_SslHandshakeType__9aZhh5f9bRDKgYB8GLASDSqg) 0): { int ret; nimln_(845, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T4_; NIM_BOOL T6_; NI T9_; T4_ = (NIM_BOOL)0; T4_ = (((NI) 0) < (hostname ? hostname->Sup.len : 0)); if (!(T4_)) goto LA5_; T6_ = (NIM_BOOL)0; T6_ = isIpAddress__pureZnet_473(hostname); T4_ = !(T6_); LA5_: ; if (!T4_) goto LA7_; nimln_(848, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T9_ = (NI)0; T9_ = SSL_set_tlsext_host_name__wrappersZopenssl_566((*socket).sslHandle, nimToCStringConv(hostname)); (void)(T9_); } LA7_: ; nimln_(849, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929869_(); nimln_(850, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); ret = Dl_2113929606_((*socket).sslHandle); nimln_(851, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, ((NI) (ret)), NIM_FALSE, ((NI32) -1), 0); nimln_(854, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T12_; NIM_BOOL T14_; T12_ = (NIM_BOOL)0; T12_ = (((NI) 0) < (hostname ? hostname->Sup.len : 0)); if (!(T12_)) goto LA13_; T14_ = (NIM_BOOL)0; T14_ = isIpAddress__pureZnet_473(hostname); T12_ = !(T14_); LA13_: ; if (!T12_) goto LA15_; nimln_(855, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); checkCertName__pureZnet_1305(socket, hostname); } LA15_: ; } break; case ((tyEnum_SslHandshakeType__9aZhh5f9bRDKgYB8GLASDSqg) 1): { int ret_2; nimln_(857, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929869_(); nimln_(858, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); ret_2 = Dl_2113929619_((*socket).sslHandle); nimln_(859, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, ((NI) (ret_2)), NIM_FALSE, ((NI32) -1), 0); } break; } popFrame(); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isClosed__pureZnet_1533)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket) { NIM_BOOL result; nimfr_("isClosed", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (NIM_BOOL)0; nimln_(1331, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((*socket).fd == osInvalidSocket__pureZnativesockets_47); popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, send__pureZnet_1719)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* data, NI size) { NI result; nimfr_("send", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimln_(1698, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = isClosed__pureZnet_1533(socket); if (!!(!(T3_))) goto LA4_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_118)); } LA4_: ; nimln_(1700, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T10_; if (!(*socket).isSsl) goto LA8_; nimln_(1701, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929869_(); nimln_(1702, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T10_ = (int)0; T10_ = Dl_2113929612_((*socket).sslHandle, ((NCSTRING) (data)), size); result = ((NI) (T10_)); goto BeforeRet_; } LA8_: ; nimln_(1709, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = send((*socket).fd, data, size, ((NI32) 16384)); }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, send__pureZnet_1729)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NimStringDesc* data, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags) { NI sent; nimfr_("send", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(1714, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); sent = send__pureZnet_1719(socket, ((void*) (nimToCStringConv(data))), (data ? data->Sup.len : 0)); nimln_(1715, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI32 lastError; if (!(sent < ((NI) 0))) goto LA3_; nimln_(1716, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastError = osLastError__pureZos_408(); nimln_(1717, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, ((NI) -1), NIM_FALSE, lastError, flags); } LA3_: ; nimln_(1719, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI32 T9_; if (!!((sent == (data ? data->Sup.len : 0)))) goto LA7_; nimln_(1720, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T9_ = (NI32)0; T9_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T9_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_119)); } LA7_: ; popFrame(); } static N_NIMCALL(void, Marker_tyRef__OhBa09cfBAnY4MdnNlGabWQ)(void* p, NI op) { tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og* a; a = (tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og*)p; nimGCvisit((void*)(*a).Sup.Sup.parent, op); nimGCvisit((void*)(*a).Sup.Sup.message, op); nimGCvisit((void*)(*a).Sup.Sup.trace, op); nimGCvisit((void*)(*a).Sup.Sup.up, op); } N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasDataBuffered__pureZnet_1530)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* s) { NIM_BOOL result; nimfr_("hasDataBuffered", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (NIM_BOOL)0; nimln_(1322, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = NIM_FALSE; nimln_(1323, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T5_; if (!(*s).isBuffered) goto LA3_; nimln_(1324, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T5_ = (NIM_BOOL)0; T5_ = (((NI) 0) < (*s).bufLen); if (!(T5_)) goto LA6_; T5_ = !(((*s).currPos == (*s).bufLen)); LA6_: ; result = T5_; } LA3_: ; nimln_(1327, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T9_; T9_ = (NIM_BOOL)0; T9_ = (*s).isSsl; if (!(T9_)) goto LA10_; T9_ = !(result); LA10_: ; if (!T9_) goto LA11_; nimln_(1328, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (*s).sslHasPeekChar; } LA11_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, timeoutRead__pureZnet_135)(int* fd_0, NI timeout) { NI result; struct pollfd tpollfdX60gensym0_; int T1_; nimfr_("timeoutRead", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (NI)0; nimln_(221, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimZeroMem((void*)(&tpollfdX60gensym0_), sizeof(struct pollfd)); nimln_(212, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); tpollfdX60gensym0_.fd = ((int) ((*fd_0))); nimln_(221, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); tpollfdX60gensym0_.events = ((NI16) 3); T1_ = (int)0; T1_ = poll((&tpollfdX60gensym0_), ((nfds_t) 1), timeout); result = ((NI) (T1_)); popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, waitFor__pureZnet_1600)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw* waited, NI timeout, NI size, NimStringDesc* funcName) { NI result; nimfr_("waitFor", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimln_(1422, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 1); nimln_(1423, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(size <= ((NI) 0))) goto LA3_; { if (!NIM_TRUE) goto LA7_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_120)); } LA7_: ; } LA3_: ; nimln_(1424, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(timeout == ((NI) -1))) goto LA11_; result = size; goto BeforeRet_; } LA11_: ; nimln_(1425, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T15_; NIM_BOOL T16_; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_121; T15_ = (NIM_BOOL)0; T16_ = (NIM_BOOL)0; T16_ = (*socket).isBuffered; if (!(T16_)) goto LA17_; T16_ = !(((*socket).bufLen == ((NI) 0))); LA17_: ; T15_ = T16_; if (!(T15_)) goto LA18_; nimln_(1426, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T15_ = !(((*socket).bufLen == (*socket).currPos)); LA18_: ; if (!T15_) goto LA19_; nimln_(1427, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt((*socket).bufLen, (*socket).currPos, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_121)) { raiseOverflow(); }; result = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_121); nimln_(1428, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((result <= size) ? result : size); } goto LA13_; LA19_: ; { tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w startTime; NI selRet; tyObject_MonoTime__FEvFMlkqJiSSGVO6HgTv8w T60_; tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw T61_; nimln_(1430, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI64 T24_; NI64 TM__XqsrSBxhOTPgLQ9cX4MmV4A_122; tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og* T27_; NimStringDesc* T28_; T24_ = (NI64)0; T24_ = inMilliseconds__pureZtimes_664((*waited)); if (nimSubInt64(((NI64) (timeout)), T24_, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_122)) { raiseOverflow(); }; if (!((NI64)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_122) < IL64(1))) goto LA25_; T27_ = NIM_NIL; T27_ = (tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og*) newObj((&NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_), sizeof(tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og)); (*T27_).Sup.Sup.Sup.m_type = (&NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_); (*T27_).Sup.Sup.name = "TimeoutError"; nimln_(1431, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T28_ = NIM_NIL; T28_ = rawNewString((funcName ? funcName->Sup.len : 0) + 21); appendString(T28_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_123)); appendString(T28_, funcName); appendString(T28_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_124)); asgnRef((void**) (&(*T27_).Sup.Sup.message), T28_); asgnRef((void**) (&(*T27_).Sup.Sup.parent), ((Exception*) NIM_NIL)); raiseExceptionEx((Exception*)T27_, "TimeoutError", "waitFor", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 1431); } LA25_: ; nimln_(1434, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int sslPending; if (!(*socket).isSsl) goto LA31_; nimln_(1435, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T35_; T35_ = (NIM_BOOL)0; T35_ = hasDataBuffered__pureZnet_1530(socket); if (!T35_) goto LA36_; nimln_(1437, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 1); goto BeforeRet_; } LA36_: ; nimln_(1438, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); sslPending = Dl_2113929621_((*socket).sslHandle); nimln_(1439, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((sslPending == ((NI32) 0)))) goto LA40_; nimln_(1440, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((((NI) (sslPending)) <= size) ? ((NI) (sslPending)) : size); goto BeforeRet_; } LA40_: ; } LA31_: ; nimln_(1442, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); startTime = getMonoTime__stdZmonotimes_5(); nimln_(1443, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T44_; T44_ = (NIM_BOOL)0; T44_ = hasDataBuffered__pureZnet_1530(socket); if (!T44_) goto LA45_; selRet = ((NI) 1); } goto LA42_; LA45_: ; { NI64 T48_; NI64 TM__XqsrSBxhOTPgLQ9cX4MmV4A_125; nimln_(1445, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T48_ = (NI64)0; T48_ = inMilliseconds__pureZtimes_664((*waited)); if (nimSubInt64(((NI64) (timeout)), T48_, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_125)) { raiseOverflow(); }; selRet = timeoutRead__pureZnet_135((&(*socket).fd), ((NI) ((NI64)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_125)))); } LA42_: ; nimln_(1446, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI32 T53_; if (!(selRet < ((NI) 0))) goto LA51_; T53_ = (NI32)0; T53_ = osLastError__pureZos_408(); raiseOSError__pureZos_405(T53_, ((NimStringDesc*) NIM_NIL)); } LA51_: ; nimln_(1447, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og* T58_; NimStringDesc* T59_; if (!!((selRet == ((NI) 1)))) goto LA56_; T58_ = NIM_NIL; T58_ = (tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og*) newObj((&NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_), sizeof(tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og)); (*T58_).Sup.Sup.Sup.m_type = (&NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_); (*T58_).Sup.Sup.name = "TimeoutError"; nimln_(1448, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T59_ = NIM_NIL; T59_ = rawNewString((funcName ? funcName->Sup.len : 0) + 21); appendString(T59_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_123)); appendString(T59_, funcName); appendString(T59_, ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_124)); asgnRef((void**) (&(*T58_).Sup.Sup.message), T59_); asgnRef((void**) (&(*T58_).Sup.Sup.parent), ((Exception*) NIM_NIL)); raiseExceptionEx((Exception*)T58_, "TimeoutError", "waitFor", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim", 1448); } LA56_: ; nimln_(1449, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T60_ = getMonoTime__stdZmonotimes_5(); T61_ = minus___stdZmonotimes_23(T60_, startTime); pluseq___pureZtimes_924(waited, T61_); } LA13_: ; }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, uniRecv__pureZnet_1536)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* buffer, int size, int flags) { NI result; nimfr_("uniRecv", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimln_(1338, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 0); nimln_(1339, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T3_; T3_ = (NIM_BOOL)0; T3_ = isClosed__pureZnet_1533(socket); if (!!(!(T3_))) goto LA4_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_127)); } LA4_: ; nimln_(1341, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { int T10_; if (!(*socket).isSsl) goto LA8_; nimln_(1342, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); Dl_2113929869_(); nimln_(1343, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T10_ = (int)0; T10_ = Dl_2113929608_((*socket).sslHandle, buffer, ((NI) (size))); result = ((NI) (T10_)); goto BeforeRet_; } LA8_: ; nimln_(1345, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = recv((*socket).fd, buffer, ((NI) (size)), flags); goto BeforeRet_; }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, readIntoBuf__pureZnet_1547)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NI32 flags) { NI result; nimfr_("readIntoBuf", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimln_(1348, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 0); nimln_(1349, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = uniRecv__pureZnet_1536(socket, ((void*) ((*socket).buffer)), ((int) 4000), flags); nimln_(1350, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result < ((NI) 0))) goto LA3_; nimln_(1353, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).lastError = osLastError__pureZos_408(); } LA3_: ; nimln_(1354, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result <= ((NI) 0))) goto LA7_; nimln_(1355, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).bufLen = ((NI) 0); nimln_(1356, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).currPos = ((NI) 0); nimln_(1357, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } LA7_: ; nimln_(1358, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).bufLen = result; nimln_(1359, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).currPos = ((NI) 0); }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, recv__pureZnet_1576)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* data, NI size) { NI result; nimfr_("recv", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimln_(1375, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(size == ((NI) 0))) goto LA3_; goto BeforeRet_; } LA3_: ; nimln_(1376, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI read; if (!(*socket).isBuffered) goto LA7_; nimln_(1377, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI res; if (!((*socket).bufLen == ((NI) 0))) goto LA11_; nimln_(1362, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); res = readIntoBuf__pureZnet_1547(socket, ((NI32) 0)); nimln_(1378, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimln_(1363, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(res <= ((NI) 0))) goto LA15_; nimln_(1364, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!NIM_FALSE) goto LA19_; nimln_(1365, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(1378, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 0); goto BeforeRet_; } goto LA17_; LA19_: ; { nimln_(1367, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = res; goto BeforeRet_; } LA17_: ; } LA15_: ; } LA11_: ; nimln_(1380, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); read = ((NI) 0); { nimln_(1381, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); while (1) { NI chunk; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_128; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_129; NCSTRING d; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_132; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_133; if (!(read < size)) goto LA23; nimln_(1382, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI res_2; if (!((*socket).bufLen <= (*socket).currPos)) goto LA26_; nimln_(1362, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); res_2 = readIntoBuf__pureZnet_1547(socket, ((NI32) 0)); nimln_(1383, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimln_(1363, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(res_2 <= ((NI) 0))) goto LA30_; nimln_(1364, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(((NI) 0) < read)) goto LA34_; nimln_(1365, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); nimln_(1383, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = read; goto BeforeRet_; } goto LA32_; LA34_: ; { nimln_(1367, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = res_2; goto BeforeRet_; } LA32_: ; } LA30_: ; } LA26_: ; nimln_(1385, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt((*socket).bufLen, (*socket).currPos, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_128)) { raiseOverflow(); }; if (nimSubInt(size, read, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_129)) { raiseOverflow(); }; chunk = (((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_128) <= (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_129)) ? (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_128) : (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_129)); nimln_(1386, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); d = ((NCSTRING) (data)); nimln_(1387, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_130; if (nimSubInt(size, read, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_130)) { raiseOverflow(); }; if (!!((chunk <= (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_130)))) goto LA39_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_131)); } LA39_: ; nimln_(1388, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((NU)((*socket).currPos) > (NU)(4000)){ raiseIndexError2((*socket).currPos, 4000); } if ((chunk) < ((NI) 0) || (chunk) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI(chunk, ((NI) 0), ((NI) IL64(9223372036854775807))); } copyMem__system_1727(((void*) ((&d[read]))), ((void*) ((&(*socket).buffer[((*socket).currPos)- 0]))), ((NI) (chunk))); nimln_(1389, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(read, chunk, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_132)) { raiseOverflow(); }; read = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_132); nimln_(1390, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt((*socket).currPos, chunk, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_133)) { raiseOverflow(); }; (*socket).currPos = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_133); } LA23: ; } nimln_(1392, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = read; } goto LA5_; LA7_: ; { nimln_(1395, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(*socket).isSsl) goto LA44_; nimln_(1396, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(*socket).sslHasPeekChar) goto LA48_; nimln_(1397, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); copyMem__system_1727(data, ((void*) ((&(*socket).sslPeekChar))), ((NI) 1)); nimln_(1398, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslHasPeekChar = NIM_FALSE; nimln_(1399, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_134; NCSTRING d_2; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_135; NI T54_; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_136; if (nimSubInt(size, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_134)) { raiseOverflow(); }; if (!(((NI) 0) < (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_134))) goto LA52_; nimln_(1400, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); d_2 = ((NCSTRING) (data)); nimln_(1401, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(size, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_135)) { raiseOverflow(); }; if (((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_135)) < ((int) (-2147483647 -1)) || ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_135)) > ((int) 2147483647)){ raiseRangeErrorI((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_135), ((int) (-2147483647 -1)), ((int) 2147483647)); } T54_ = (NI)0; T54_ = uniRecv__pureZnet_1536(socket, ((void*) ((&d_2[((NI) 1)]))), ((int) ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_135))), ((NI32) 0)); if (nimAddInt(T54_, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_136)) { raiseOverflow(); }; result = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_136); } goto LA50_; LA52_: ; { nimln_(1403, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 1); } LA50_: ; } goto LA46_; LA48_: ; { nimln_(1405, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((size) < ((int) (-2147483647 -1)) || (size) > ((int) 2147483647)){ raiseRangeErrorI(size, ((int) (-2147483647 -1)), ((int) 2147483647)); } result = uniRecv__pureZnet_1536(socket, data, ((int) (size)), ((NI32) 0)); } LA46_: ; } goto LA42_; LA44_: ; { nimln_(1407, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((size) < ((int) (-2147483647 -1)) || (size) > ((int) 2147483647)){ raiseRangeErrorI(size, ((int) (-2147483647 -1)), ((int) 2147483647)); } result = recv((*socket).fd, data, ((NI) (((int) (size)))), ((NI32) 0)); } LA42_: ; nimln_(1410, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result < ((NI) 0))) goto LA60_; nimln_(1412, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).lastError = osLastError__pureZos_408(); } LA60_: ; } LA5_: ; }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, peekChar__pureZnet_1668)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NIM_CHAR* c) { NI result; nimfr_("peekChar", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimln_(1530, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(*socket).isBuffered) goto LA3_; nimln_(1531, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NI) 1); nimln_(1532, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T7_; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_137; NI res; T7_ = (NIM_BOOL)0; T7_ = ((*socket).bufLen == ((NI) 0)); if (T7_) goto LA8_; if (nimSubInt((*socket).bufLen, ((NI) 1), &TM__XqsrSBxhOTPgLQ9cX4MmV4A_137)) { raiseOverflow(); }; T7_ = ((NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_137) < (*socket).currPos); LA8_: ; if (!T7_) goto LA9_; nimln_(1533, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); res = readIntoBuf__pureZnet_1547(socket, ((NI32) 0)); nimln_(1534, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(res <= ((NI) 0))) goto LA13_; nimln_(1535, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = res; } LA13_: ; } LA9_: ; nimln_(1537, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((NU)((*socket).currPos) > (NU)(4000)){ raiseIndexError2((*socket).currPos, 4000); } (*c) = (*socket).buffer[((*socket).currPos)- 0]; } goto LA1_; LA3_: ; { nimln_(1540, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(*socket).isSsl) goto LA18_; nimln_(1541, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!!((*socket).sslHasPeekChar)) goto LA22_; nimln_(1542, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = uniRecv__pureZnet_1536(socket, ((void*) ((&(*socket).sslPeekChar))), ((int) 1), ((NI32) 0)); nimln_(1543, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*socket).sslHasPeekChar = NIM_TRUE; } LA22_: ; nimln_(1545, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); (*c) = (*socket).sslPeekChar; nimln_(1546, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } LA18_: ; nimln_(1547, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = recv((*socket).fd, ((void*) (c)), ((NI) 1), ((int) 2)); } LA1_: ; }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, readLine__pureZnet_1673)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NimStringDesc** line, NI timeout, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags, NI maxLength) { tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw waited; nimfr_("readLine", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimZeroMem((void*)(&waited), sizeof(tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw)); nimln_(1583, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*line)), setLengthStr((*line), ((NI) 0))); { nimln_(1584, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); while (1) { NIM_CHAR c; NI T3_; NI n; c = (NIM_CHAR)0; nimln_(1586, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T3_ = (NI)0; T3_ = waitFor__pureZnet_1600(socket, (&waited), timeout, ((NI) 1), ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_126)); (void)(T3_); nimln_(1587, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); n = recv__pureZnet_1576(socket, ((void*) ((&c))), ((NI) 1)); nimln_(1588, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI32 lastError; if (!(n < ((NI) 0))) goto LA6_; nimln_(1575, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastError = getSocketError__pureZnet_1373(socket); nimln_(1576, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T10_; T10_ = (NIM_BOOL)0; T10_ = isDisconnectionError__pureZnet_171(flags, lastError); if (!T10_) goto LA11_; nimln_(1577, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*line)), setLengthStr((*line), ((NI) 0))); } LA11_: ; nimln_(1578, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, n, NIM_FALSE, lastError, flags); nimln_(1588, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA4_; LA6_: ; { nimln_(1589, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(n == ((NI) 0))) goto LA14_; unsureAsgnRef((void**) (&(*line)), setLengthStr((*line), ((NI) 0))); goto BeforeRet_; } goto LA4_; LA14_: ; LA4_: ; nimln_(1590, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI T20_; if (!((NU8)(c) == (NU8)(13))) goto LA18_; nimln_(1591, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T20_ = (NI)0; T20_ = waitFor__pureZnet_1600(socket, (&waited), timeout, ((NI) 1), ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_126)); (void)(T20_); nimln_(1592, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); n = peekChar__pureZnet_1668(socket, (&c)); nimln_(1593, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T23_; NI T27_; T23_ = (NIM_BOOL)0; T23_ = (((NI) 0) < n); if (!(T23_)) goto LA24_; T23_ = ((NU8)(c) == (NU8)(10)); LA24_: ; if (!T23_) goto LA25_; nimln_(1594, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); T27_ = (NI)0; T27_ = recv__pureZnet_1576(socket, ((void*) ((&c))), ((NI) 1)); (void)(T27_); } goto LA21_; LA25_: ; { NI32 lastError_2; nimln_(1595, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(n <= ((NI) 0))) goto LA29_; nimln_(1575, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastError_2 = getSocketError__pureZnet_1373(socket); nimln_(1576, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NIM_BOOL T33_; T33_ = (NIM_BOOL)0; T33_ = isDisconnectionError__pureZnet_171(flags, lastError_2); if (!T33_) goto LA34_; nimln_(1577, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*line)), setLengthStr((*line), ((NI) 0))); } LA34_: ; nimln_(1578, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, n, NIM_FALSE, lastError_2, flags); nimln_(1595, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA21_; LA29_: ; LA21_: ; nimln_(1596, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimln_(1571, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(((*line) ? (*line)->Sup.len : 0) == ((NI) 0))) goto LA38_; nimln_(1572, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*line)), resizeString((*line), 2)); appendString((*line), ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_138)); } LA38_: ; nimln_(1597, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA16_; LA18_: ; { nimln_(1598, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!((NU8)(c) == (NU8)(10))) goto LA41_; nimln_(1599, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { nimln_(1571, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (!(((*line) ? (*line)->Sup.len : 0) == ((NI) 0))) goto LA45_; nimln_(1572, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*line)), resizeString((*line), 2)); appendString((*line), ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_138)); } LA45_: ; nimln_(1600, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } goto LA16_; LA41_: ; LA16_: ; nimln_(1601, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*line)), addChar((*line), c)); nimln_(1604, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(maxLength < ((*line) ? (*line)->Sup.len : 0))) goto LA49_; goto LA1; } LA49_: ; } } LA1: ; }BeforeRet_: ; popFrame(); } N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, recvLine__pureZnet_1686)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NI timeout, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags, NI maxLength) { NimStringDesc* result; nimfr_("recvLine", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = NIM_NIL; nimln_(1626, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = ((NimStringDesc*) NIM_NIL); nimln_(1627, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); readLine__pureZnet_1673(socket, (&result), timeout, flags, maxLength); popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, recv__pureZnet_1635)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, void* data, NI size, NI timeout) { NI result; tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw waited; NI read; nimfr_("recv", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { result = (NI)0; nimZeroMem((void*)(&waited), sizeof(tyObject_Duration__lj9ar6Co3fgk6NgGnVaNpJw)); nimln_(1456, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); read = ((NI) 0); { nimln_(1457, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); while (1) { NI avail; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_139; NCSTRING d; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_143; if (!(read < size)) goto LA2; nimln_(1458, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimSubInt(size, read, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_139)) { raiseOverflow(); }; avail = waitFor__pureZnet_1600(socket, (&waited), timeout, (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_139), ((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_140)); nimln_(1459, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); d = ((NCSTRING) (data)); nimln_(1460, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_141; if (nimSubInt(size, read, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_141)) { raiseOverflow(); }; if (!!((avail <= (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_141)))) goto LA5_; failedAssertImpl__stdZassertions_56(((NimStringDesc*) &TM__XqsrSBxhOTPgLQ9cX4MmV4A_142)); } LA5_: ; nimln_(1461, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = recv__pureZnet_1576(socket, ((void*) ((&d[read]))), avail); nimln_(1462, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result == ((NI) 0))) goto LA9_; goto LA1; } LA9_: ; nimln_(1463, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(result < ((NI) 0))) goto LA13_; nimln_(1464, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); goto BeforeRet_; } LA13_: ; nimln_(1465, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if (nimAddInt(read, result, &TM__XqsrSBxhOTPgLQ9cX4MmV4A_143)) { raiseOverflow(); }; read = (NI)(TM__XqsrSBxhOTPgLQ9cX4MmV4A_143); } LA2: ; } LA1: ; nimln_(1467, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = read; }BeforeRet_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(NI, recv__pureZnet_1654)(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ* socket, NimStringDesc** data, NI size, NI timeout, tySet_tyEnum_SocketFlag__4xio0cAXR7XG4pF9bVcpxEg flags) { NI result; nimfr_("recv", "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = (NI)0; nimln_(1491, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((size) < ((NI) 0) || (size) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI(size, ((NI) 0), ((NI) IL64(9223372036854775807))); } unsureAsgnRef((void**) (&(*data)), setLengthStr((*data), ((NI) (size)))); nimln_(1493, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { if (!(timeout == ((NI) -1))) goto LA3_; nimln_(1494, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = recv__pureZnet_1576(socket, ((void*) (nimToCStringConv((*data)))), size); } goto LA1_; LA3_: ; { nimln_(1496, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); result = recv__pureZnet_1635(socket, ((void*) (nimToCStringConv((*data)))), size, timeout); } LA1_: ; nimln_(1497, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); { NI32 lastError; if (!(result < ((NI) 0))) goto LA8_; nimln_(1498, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); unsureAsgnRef((void**) (&(*data)), setLengthStr((*data), ((NI) 0))); nimln_(1499, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); lastError = getSocketError__pureZnet_1373(socket); nimln_(1500, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); socketError__pureZnet_165(socket, result, NIM_FALSE, lastError, flags); } goto LA6_; LA8_: ; { nimln_(1502, "/home/yyoncho/Sources/nim/Nim/lib/pure/net.nim"); if ((result) < ((NI) 0) || (result) > ((NI) IL64(9223372036854775807))){ raiseRangeErrorI(result, ((NI) 0), ((NI) IL64(9223372036854775807))); } unsureAsgnRef((void**) (&(*data)), setLengthStr((*data), ((NI) (result)))); } LA6_: ; popFrame(); return result; } N_LIB_PRIVATE N_NIMCALL(void, atmdotdotatsdotdotatsNimatslibatspureatsnetdotnim_DatInit000)(void) { static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_2_3[3]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_3_2[2]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_4_2[2]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_5_2[2]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_6_2[2]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_7_2[2]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[16]; static TNimNode* TM__XqsrSBxhOTPgLQ9cX4MmV4A_58_2[2]; NI TM__XqsrSBxhOTPgLQ9cX4MmV4A_60; static char* NIM_CONST TM__XqsrSBxhOTPgLQ9cX4MmV4A_59[2] = { "IPv6", "IPv4"}; static TNimNode TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[41]; NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_.size = sizeof(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w); NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_.align = NIM_ALIGNOF(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w); NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_.kind = 18; NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_.base = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_2_3[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[1]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[1].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[1].offset = offsetof(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w, context); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[1].typ = (&NTIsslctx__QQ33RYEe889cv60wm9bVkd8A_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[1].name = "context"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_2_3[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[2]; NTIhashset__bGAilYs5sUICRbD13gZaFg_.size = sizeof(tyObject_HashSet__bGAilYs5sUICRbD13gZaFg); NTIhashset__bGAilYs5sUICRbD13gZaFg_.align = NIM_ALIGNOF(tyObject_HashSet__bGAilYs5sUICRbD13gZaFg); NTIhashset__bGAilYs5sUICRbD13gZaFg_.kind = 18; NTIhashset__bGAilYs5sUICRbD13gZaFg_.base = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_3_2[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[4]; NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_.size = sizeof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ); NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_.align = NIM_ALIGNOF(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ); NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_.kind = 18; NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_.base = 0; NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_.flags = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_4_2[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[6]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[6].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[6].offset = offsetof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ, Field0); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[6].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[6].name = "Field0"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_4_2[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[7]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[7].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[7].offset = offsetof(tyTuple__1v9bKyksXWMsm0vNwmZ4EuQ, Field1); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[7].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[7].name = "Field1"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[5].len = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[5].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[5].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_4_2[0]; NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[5]; NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_.size = sizeof(tySequence__8Np6tlClE5az1CyqZdN19bQ*); NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_.align = NIM_ALIGNOF(tySequence__8Np6tlClE5az1CyqZdN19bQ*); NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_.kind = 24; NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_.base = (&NTIkeyvaluepair__1v9bKyksXWMsm0vNwmZ4EuQ_); NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_.marker = Marker_tySequence__8Np6tlClE5az1CyqZdN19bQ; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[4].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[4].offset = offsetof(tyObject_HashSet__bGAilYs5sUICRbD13gZaFg, data); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[4].typ = (&NTIkeyvaluepairseq__8Np6tlClE5az1CyqZdN19bQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[4].name = "data"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_3_2[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[8]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[8].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[8].offset = offsetof(tyObject_HashSet__bGAilYs5sUICRbD13gZaFg, counter); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[8].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[8].name = "counter"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[3].len = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[3].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[3].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_3_2[0]; NTIhashset__bGAilYs5sUICRbD13gZaFg_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[3]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[2].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[2].offset = offsetof(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w, referencedData); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[2].typ = (&NTIhashset__bGAilYs5sUICRbD13gZaFg_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[2].name = "referencedData"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_2_3[2] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[9]; NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_.size = sizeof(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ); NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_.align = NIM_ALIGNOF(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ); NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_.kind = 17; NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_5_2[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[11]; NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_.size = sizeof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A); NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_.align = NIM_ALIGNOF(tyTuple__JfHvHzMrhKkWAUvQKe0i1A); NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_.kind = 18; NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_.base = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_6_2[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[13]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[13].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[13].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field0); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[13].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[13].name = "Field0"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_6_2[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[14]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[14].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[14].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field1); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[14].typ = (&NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[14].name = "Field1"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[12].len = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[12].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[12].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_6_2[0]; NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[12]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[11].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[11].offset = offsetof(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ, serverGetPskFunc); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[11].typ = (&NTIsslservergetpskfunc__oFHfEKFsiYTMAy9a42cSiKw_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[11].name = "serverGetPskFunc"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_5_2[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[15]; NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_.size = sizeof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A); NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_.align = NIM_ALIGNOF(tyTuple__JfHvHzMrhKkWAUvQKe0i1A); NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_.kind = 18; NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_.base = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_7_2[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[17]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[17].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[17].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field0); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[17].typ = (&NTIpointer__vr5DoT1jILTGdRlYv1OYpw_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[17].name = "Field0"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_7_2[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[18]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[18].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[18].offset = offsetof(tyTuple__JfHvHzMrhKkWAUvQKe0i1A, Field1); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[18].typ = (&NTIrefobject__HsJiUUcO9cHBdUCi0HwkSTA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[18].name = "Field1"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[16].len = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[16].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[16].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_7_2[0]; NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[16]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[15].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[15].offset = offsetof(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ, clientGetPskFunc); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[15].typ = (&NTIsslclientgetpskfunc__lYMtBEH0vEMRzoDaCw5CJg_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[15].name = "clientGetPskFunc"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[10].len = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[10].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[10].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_5_2[0]; NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[10]; NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_.size = sizeof(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ*); NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_.align = NIM_ALIGNOF(tyObject_SslContextExtraInternalcolonObjectType___22zILeNTc8ClX7DrPZ3XOQ*); NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_.kind = 22; NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_.base = (&NTIsslcontextextrainternal58objecttype__22zILeNTc8ClX7DrPZ3XOQ_); NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_.marker = Marker_tyRef__t2PQ49cw9cyPD5BKolxzFbTw; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[9].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[9].offset = offsetof(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w, extraInternal); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[9].typ = (&NTIsslcontextextrainternal__t2PQ49cw9cyPD5BKolxzFbTw_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[9].name = "extraInternal"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[0].len = 3; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[0].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[0].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_2_3[0]; NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[0]; NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_.size = sizeof(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w*); NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_.align = NIM_ALIGNOF(tyObject_SslContextcolonObjectType___nNdejAl9bbVbX7sP6RJ4h0w*); NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_.kind = 22; NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_.base = (&NTIsslcontext58objecttype__nNdejAl9bbVbX7sP6RJ4h0w_); NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_.marker = Marker_tyRef__LP7l6kWJNPJLySYXWH5AYA; NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_.size = sizeof(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA); NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_.align = NIM_ALIGNOF(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA); NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_.kind = 17; NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_.base = (&NTIcatchableerror__qrLSDoe2oBoAqNtJ9badtnA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[19].len = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[19].kind = 2; NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[19]; NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_.size = sizeof(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA*); NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_.align = NIM_ALIGNOF(tyObject_SslError__GtD0IEVE1EOWxaU5x9amdzA*); NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_.kind = 22; NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_.base = (&NTIsslerror__GtD0IEVE1EOWxaU5x9amdzA_); NTIrefsslerror__VoScTqHOwyXBt9b3u4T1Ksw_.marker = Marker_tyRef__VoScTqHOwyXBt9b3u4T1Ksw; NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_.size = sizeof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ); NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_.align = NIM_ALIGNOF(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ); NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_.kind = 18; NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_.base = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[0] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[21]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[21].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[21].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, fd); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[21].typ = (&NTIcint__nlCscttRCss70IBTyuBqnA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[21].name = "fd"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[1] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[22]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[22].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[22].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, isBuffered); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[22].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[22].name = "isBuffered"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[2] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[23]; NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_.size = sizeof(tyArray__QQGLPNVVwLhYjkngqAxXQQ); NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_.align = NIM_ALIGNOF(tyArray__QQGLPNVVwLhYjkngqAxXQQ); NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_.kind = 16; NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_.base = (&NTIchar__nmiMWKVIe46vacnhAFrQvw_); NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_.flags = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[23].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[23].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, buffer); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[23].typ = (&NTIarrayL48OO52484848_charT__QQGLPNVVwLhYjkngqAxXQQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[23].name = "buffer"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[3] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[24]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[24].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[24].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, currPos); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[24].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[24].name = "currPos"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[4] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[25]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[25].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[25].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, bufLen); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[25].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[25].name = "bufLen"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[5] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[26]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[26].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[26].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, isSsl); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[26].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[26].name = "isSsl"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[6] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[27]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[27].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[27].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sslHandle); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[27].typ = (&NTIsslctx__QQ33RYEe889cv60wm9bVkd8A_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[27].name = "sslHandle"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[7] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[28]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[28].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[28].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sslContext); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[28].typ = (&NTIsslcontext__LP7l6kWJNPJLySYXWH5AYA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[28].name = "sslContext"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[8] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[29]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[29].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[29].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sslNoHandshake); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[29].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[29].name = "sslNoHandshake"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[9] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[30]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[30].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[30].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sslHasPeekChar); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[30].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[30].name = "sslHasPeekChar"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[10] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[31]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[31].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[31].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sslPeekChar); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[31].typ = (&NTIchar__nmiMWKVIe46vacnhAFrQvw_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[31].name = "sslPeekChar"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[11] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[32]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[32].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[32].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sslNoShutdown); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[32].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[32].name = "sslNoShutdown"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[12] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[33]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[33].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[33].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, lastError); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[33].typ = (&NTIint5150__sVg18TP9cLifHyygRe9cro9aA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[33].name = "lastError"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[13] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[34]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[34].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[34].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, domain); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[34].typ = (&NTIdomain__Q79bEtFARvq0ekDNtvj3Vqg_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[34].name = "domain"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[14] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[35]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[35].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[35].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, sockType); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[35].typ = (&NTIsocktype__NQT1bItGG2X9byGdrWX7ujw_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[35].name = "sockType"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[15] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[36]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[36].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[36].offset = offsetof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ, protocol); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[36].typ = (&NTIprotocol__dqJ1OqRGclxIMMdSLRzzXg_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[36].name = "protocol"; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[20].len = 16; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[20].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[20].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_25_16[0]; NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[20]; NTIsocket__MkGXUPMSENeRDS7EppfLgA_.size = sizeof(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*); NTIsocket__MkGXUPMSENeRDS7EppfLgA_.align = NIM_ALIGNOF(tyObject_SocketImpl__aIhANOOoETolVz9cccNO9cRQ*); NTIsocket__MkGXUPMSENeRDS7EppfLgA_.kind = 22; NTIsocket__MkGXUPMSENeRDS7EppfLgA_.base = (&NTIsocketimpl__aIhANOOoETolVz9cccNO9cRQ_); NTIsocket__MkGXUPMSENeRDS7EppfLgA_.marker = Marker_tyRef__MkGXUPMSENeRDS7EppfLgA; NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_.size = sizeof(tyEnum_IpAddressFamily__iqqacz9cr9bcNjYY74E10wPA); NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_.align = NIM_ALIGNOF(tyEnum_IpAddressFamily__iqqacz9cr9bcNjYY74E10wPA); NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_.kind = 14; NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_.base = 0; NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_.flags = 3; for (TM__XqsrSBxhOTPgLQ9cX4MmV4A_60 = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_60 < 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_60++) { TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[TM__XqsrSBxhOTPgLQ9cX4MmV4A_60+37].kind = 1; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[TM__XqsrSBxhOTPgLQ9cX4MmV4A_60+37].offset = TM__XqsrSBxhOTPgLQ9cX4MmV4A_60; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[TM__XqsrSBxhOTPgLQ9cX4MmV4A_60+37].name = TM__XqsrSBxhOTPgLQ9cX4MmV4A_59[TM__XqsrSBxhOTPgLQ9cX4MmV4A_60]; TM__XqsrSBxhOTPgLQ9cX4MmV4A_58_2[TM__XqsrSBxhOTPgLQ9cX4MmV4A_60] = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[TM__XqsrSBxhOTPgLQ9cX4MmV4A_60+37]; } TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[39].len = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[39].kind = 2; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[39].sons = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_58_2[0]; NTIipaddressfamily__iqqacz9cr9bcNjYY74E10wPA_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[39]; NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_.size = sizeof(tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og); NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_.align = NIM_ALIGNOF(tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og); NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_.kind = 17; NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_.base = (&NTIcatchableerror__qrLSDoe2oBoAqNtJ9badtnA_); TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[40].len = 0; TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[40].kind = 2; NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_.node = &TM__XqsrSBxhOTPgLQ9cX4MmV4A_0[40]; NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_.size = sizeof(tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og*); NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_.align = NIM_ALIGNOF(tyObject_TimeoutError__VuFrIFILhVuaGaO5FCG0Og*); NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_.kind = 22; NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_.base = (&NTItimeouterror__VuFrIFILhVuaGaO5FCG0Og_); NTIreftimeouterror__OhBa09cfBAnY4MdnNlGabWQ_.marker = Marker_tyRef__OhBa09cfBAnY4MdnNlGabWQ; }