Index: src/amiga-funcarray.inc ================================================================== --- src/amiga-funcarray.inc +++ src/amiga-funcarray.inc @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2021 Jonathan Schleifer + * Copyright (c) 2008-2022 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -51,23 +51,26 @@ (CONST_APTR)glue_OFScryptBlockMix, (CONST_APTR)glue_OFScryptROMix, (CONST_APTR)glue_OFSocketAddressParseIP, (CONST_APTR)glue_OFSocketAddressParseIPv4, (CONST_APTR)glue_OFSocketAddressParseIPv6, +(CONST_APTR)glue_OFSocketAddressMakeUNIX, (CONST_APTR)glue_OFSocketAddressMakeIPX, (CONST_APTR)glue_OFSocketAddressEqual, (CONST_APTR)glue_OFSocketAddressHash, (CONST_APTR)glue_OFSocketAddressString, (CONST_APTR)glue_OFSocketAddressSetPort, (CONST_APTR)glue_OFSocketAddressPort, +(CONST_APTR)glue_OFSocketAddressUNIXPath, (CONST_APTR)glue_OFSocketAddressSetIPXNetwork, (CONST_APTR)glue_OFSocketAddressIPXNetwork, (CONST_APTR)glue_OFSocketAddressSetIPXNode, (CONST_APTR)glue_OFSocketAddressIPXNode, +(CONST_APTR)glue_OFTLSStreamErrorCodeDescription, (CONST_APTR)glue_OFStrPTime, (CONST_APTR)glue_OFStringEncodingParseName, (CONST_APTR)glue_OFStringEncodingName, (CONST_APTR)glue_OFUTF16StringLength, (CONST_APTR)glue_OFUTF32StringLength, (CONST_APTR)glue_OFZIPArchiveEntryVersionToString, (CONST_APTR)glue_OFZIPArchiveEntryCompressionMethodName, (CONST_APTR)glue_OFZIPArchiveEntryExtraFieldFind, Index: src/amiga-glue.h ================================================================== --- src/amiga-glue.h +++ src/amiga-glue.h @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2021 Jonathan Schleifer + * Copyright (c) 2008-2022 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -27,10 +27,11 @@ #import "OFMethodSignature.h" #import "OFOnce.h" #import "OFPBKDF2.h" #import "OFScrypt.h" #import "OFSocket.h" +#import "OFTLSStream.h" #import "OFStrPTime.h" #import "OFString.h" #import "OFZIPArchiveEntry.h" #ifdef OF_AMIGAOS_M68K @@ -79,23 +80,26 @@ extern void glue_OFScryptBlockMix PPC_PARAMS(uint32_t *_Nonnull output, const uint32_t *_Nonnull input, size_t blockSize); extern void glue_OFScryptROMix PPC_PARAMS(uint32_t *buffer, size_t blockSize, size_t costFactor, uint32_t *tmp); extern OFSocketAddress glue_OFSocketAddressParseIP PPC_PARAMS(OFString *IP, uint16_t port); extern OFSocketAddress glue_OFSocketAddressParseIPv4 PPC_PARAMS(OFString *IP, uint16_t port); extern OFSocketAddress glue_OFSocketAddressParseIPv6 PPC_PARAMS(OFString *IP, uint16_t port); -extern OFSocketAddress glue_OFSocketAddressMakeIPX PPC_PARAMS(const unsigned char *_Nonnull node, uint32_t network, uint16_t port); -extern bool glue_OFSocketAddressEqual PPC_PARAMS(const OFSocketAddress *_Nonnull address1, const OFSocketAddress *_Nonnull address2); -extern unsigned long glue_OFSocketAddressHash PPC_PARAMS(const OFSocketAddress *_Nonnull address); -extern OFString *_Nonnull glue_OFSocketAddressString PPC_PARAMS(const OFSocketAddress *_Nonnull address); -extern void glue_OFSocketAddressSetPort PPC_PARAMS(OFSocketAddress *_Nonnull address, uint16_t port); -extern uint16_t glue_OFSocketAddressPort PPC_PARAMS(const OFSocketAddress *_Nonnull address); -extern void glue_OFSocketAddressSetIPXNetwork PPC_PARAMS(OFSocketAddress *_Nonnull address, uint32_t network); -extern uint32_t glue_OFSocketAddressIPXNetwork PPC_PARAMS(const OFSocketAddress *_Nonnull address); -extern void glue_OFSocketAddressSetIPXNode PPC_PARAMS(OFSocketAddress *_Nonnull address, const unsigned char *_Nonnull node); -extern void glue_OFSocketAddressIPXNode PPC_PARAMS(const OFSocketAddress *_Nonnull address, unsigned char *_Nonnull node); +extern OFSocketAddress glue_OFSocketAddressMakeUNIX PPC_PARAMS(OFString *path); +extern OFSocketAddress glue_OFSocketAddressMakeIPX PPC_PARAMS(uint32_t network, const unsigned char *node, uint16_t port); +extern bool glue_OFSocketAddressEqual PPC_PARAMS(const OFSocketAddress *address1, const OFSocketAddress *address2); +extern unsigned long glue_OFSocketAddressHash PPC_PARAMS(const OFSocketAddress *address); +extern OFString *_Nonnull glue_OFSocketAddressString PPC_PARAMS(const OFSocketAddress *address); +extern void glue_OFSocketAddressSetPort PPC_PARAMS(OFSocketAddress *address, uint16_t port); +extern uint16_t glue_OFSocketAddressPort PPC_PARAMS(const OFSocketAddress *address); +extern OFString *glue_OFSocketAddressUNIXPath PPC_PARAMS(const OFSocketAddress *address); +extern void glue_OFSocketAddressSetIPXNetwork PPC_PARAMS(OFSocketAddress *address, uint32_t network); +extern uint32_t glue_OFSocketAddressIPXNetwork PPC_PARAMS(const OFSocketAddress *address); +extern void glue_OFSocketAddressSetIPXNode PPC_PARAMS(OFSocketAddress *address, const unsigned char *node); +extern void glue_OFSocketAddressIPXNode PPC_PARAMS(const OFSocketAddress *address, unsigned char *_Nonnull node); +extern OFString *glue_OFTLSStreamErrorCodeDescription PPC_PARAMS(OFTLSStreamErrorCode errorCode); extern const char *_Nullable glue_OFStrPTime PPC_PARAMS(const char *buffer, const char *format, struct tm *tm, int16_t *_Nullable tz); extern OFStringEncoding glue_OFStringEncodingParseName PPC_PARAMS(OFString *string); extern OFString *_Nullable glue_OFStringEncodingName PPC_PARAMS(OFStringEncoding encoding); extern size_t glue_OFUTF16StringLength PPC_PARAMS(const OFChar16 *string); extern size_t glue_OFUTF32StringLength PPC_PARAMS(const OFChar32 *string); extern OFString *_Nonnull glue_OFZIPArchiveEntryVersionToString PPC_PARAMS(uint16_t version); extern OFString *_Nonnull glue_OFZIPArchiveEntryCompressionMethodName PPC_PARAMS(OFZIPArchiveEntryCompressionMethod compressionMethod); extern size_t glue_OFZIPArchiveEntryExtraFieldFind PPC_PARAMS(OFData *extraField, OFZIPArchiveEntryExtraFieldTag tag, uint16_t *size); Index: src/amiga-glue.m ================================================================== --- src/amiga-glue.m +++ src/amiga-glue.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2021 Jonathan Schleifer + * Copyright (c) 2008-2022 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -337,95 +337,119 @@ return OFSocketAddressParseIPv6(IP, port); } OFSocketAddress __saveds -glue_OFSocketAddressMakeIPX PPC_PARAMS(const unsigned char *_Nonnull node, uint32_t network, uint16_t port) +glue_OFSocketAddressMakeUNIX PPC_PARAMS(OFString *path) { - M68K_ARG(const unsigned char *_Nonnull, node, a0) + M68K_ARG(OFString *, path, a0) + + return OFSocketAddressMakeUNIX(path); +} + +OFSocketAddress __saveds +glue_OFSocketAddressMakeIPX PPC_PARAMS(uint32_t network, const unsigned char *node, uint16_t port) +{ M68K_ARG(uint32_t, network, d0) + M68K_ARG(const unsigned char *, node, a0) M68K_ARG(uint16_t, port, d1) - return OFSocketAddressMakeIPX(node, network, port); + return OFSocketAddressMakeIPX(network, node, port); } bool __saveds -glue_OFSocketAddressEqual PPC_PARAMS(const OFSocketAddress *_Nonnull address1, const OFSocketAddress *_Nonnull address2) +glue_OFSocketAddressEqual PPC_PARAMS(const OFSocketAddress *address1, const OFSocketAddress *address2) { - M68K_ARG(const OFSocketAddress *_Nonnull, address1, a0) - M68K_ARG(const OFSocketAddress *_Nonnull, address2, a1) + M68K_ARG(const OFSocketAddress *, address1, a0) + M68K_ARG(const OFSocketAddress *, address2, a1) return OFSocketAddressEqual(address1, address2); } unsigned long __saveds -glue_OFSocketAddressHash PPC_PARAMS(const OFSocketAddress *_Nonnull address) +glue_OFSocketAddressHash PPC_PARAMS(const OFSocketAddress *address) { - M68K_ARG(const OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(const OFSocketAddress *, address, a0) return OFSocketAddressHash(address); } OFString *_Nonnull __saveds -glue_OFSocketAddressString PPC_PARAMS(const OFSocketAddress *_Nonnull address) +glue_OFSocketAddressString PPC_PARAMS(const OFSocketAddress *address) { - M68K_ARG(const OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(const OFSocketAddress *, address, a0) return OFSocketAddressString(address); } void __saveds -glue_OFSocketAddressSetPort PPC_PARAMS(OFSocketAddress *_Nonnull address, uint16_t port) +glue_OFSocketAddressSetPort PPC_PARAMS(OFSocketAddress *address, uint16_t port) { - M68K_ARG(OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(OFSocketAddress *, address, a0) M68K_ARG(uint16_t, port, d0) OFSocketAddressSetPort(address, port); } uint16_t __saveds -glue_OFSocketAddressPort PPC_PARAMS(const OFSocketAddress *_Nonnull address) +glue_OFSocketAddressPort PPC_PARAMS(const OFSocketAddress *address) { - M68K_ARG(const OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(const OFSocketAddress *, address, a0) return OFSocketAddressPort(address); } + +OFString * __saveds +glue_OFSocketAddressUNIXPath PPC_PARAMS(const OFSocketAddress *address) +{ + M68K_ARG(const OFSocketAddress *, address, a0) + + return OFSocketAddressUNIXPath(address); +} void __saveds -glue_OFSocketAddressSetIPXNetwork PPC_PARAMS(OFSocketAddress *_Nonnull address, uint32_t network) +glue_OFSocketAddressSetIPXNetwork PPC_PARAMS(OFSocketAddress *address, uint32_t network) { - M68K_ARG(OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(OFSocketAddress *, address, a0) M68K_ARG(uint32_t, network, d0) OFSocketAddressSetIPXNetwork(address, network); } uint32_t __saveds -glue_OFSocketAddressIPXNetwork PPC_PARAMS(const OFSocketAddress *_Nonnull address) +glue_OFSocketAddressIPXNetwork PPC_PARAMS(const OFSocketAddress *address) { - M68K_ARG(const OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(const OFSocketAddress *, address, a0) return OFSocketAddressIPXNetwork(address); } void __saveds -glue_OFSocketAddressSetIPXNode PPC_PARAMS(OFSocketAddress *_Nonnull address, const unsigned char *_Nonnull node) +glue_OFSocketAddressSetIPXNode PPC_PARAMS(OFSocketAddress *address, const unsigned char *node) { - M68K_ARG(OFSocketAddress *_Nonnull, address, a0) - M68K_ARG(const unsigned char *_Nonnull, node, a1) + M68K_ARG(OFSocketAddress *, address, a0) + M68K_ARG(const unsigned char *, node, a1) OFSocketAddressSetIPXNode(address, node); } void __saveds -glue_OFSocketAddressIPXNode PPC_PARAMS(const OFSocketAddress *_Nonnull address, unsigned char *_Nonnull node) +glue_OFSocketAddressIPXNode PPC_PARAMS(const OFSocketAddress *address, unsigned char *_Nonnull node) { - M68K_ARG(const OFSocketAddress *_Nonnull, address, a0) + M68K_ARG(const OFSocketAddress *, address, a0) M68K_ARG(unsigned char *_Nonnull, node, a1) OFSocketAddressIPXNode(address, node); } + +OFString * __saveds +glue_OFTLSStreamErrorCodeDescription PPC_PARAMS(OFTLSStreamErrorCode errorCode) +{ + M68K_ARG(OFTLSStreamErrorCode, errorCode, d0) + + return OFTLSStreamErrorCodeDescription(errorCode); +} const char *_Nullable __saveds glue_OFStrPTime PPC_PARAMS(const char *buffer, const char *format, struct tm *tm, int16_t *_Nullable tz) { M68K_ARG(const char *, buffer, a0) Index: src/amiga-library.xml ================================================================== --- src/amiga-library.xml +++ src/amiga-library.xml @@ -137,56 +137,58 @@ + + + - + - - + + - + - + - + - + + + + - + - + - - + + - + + OFTLSStream.h + + + OFStrPTime.h Index: src/linklib/linklib.m ================================================================== --- src/linklib/linklib.m +++ src/linklib/linklib.m @@ -1,7 +1,7 @@ /* - * Copyright (c) 2008-2021 Jonathan Schleifer + * Copyright (c) 2008-2022 Jonathan Schleifer * * All rights reserved. * * This file is part of ObjFW. It may be distributed under the terms of the * Q Public License 1.0, which can be found in the file LICENSE.QPL included in @@ -29,10 +29,11 @@ #import "OFMethodSignature.h" #import "OFOnce.h" #import "OFPBKDF2.h" #import "OFScrypt.h" #import "OFSocket.h" +#import "OFTLSStream.h" #import "OFStrPTime.h" #import "OFString.h" #import "OFZIPArchiveEntry.h" extern struct Library *ObjFWBase; @@ -682,309 +683,360 @@ return __extension__ ((OFSocketAddress (*)(OFString *, uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 250))(IP, port); #endif } OFSocketAddress -OFSocketAddressMakeIPX(const unsigned char *_Nonnull node, uint32_t network, uint16_t port) +OFSocketAddressMakeUNIX(OFString *path) +{ +#if defined(OF_AMIGAOS_M68K) + register struct Library *a6 __asm__("a6") = ObjFWBase; + (void)a6; + return ((OFSocketAddress (*)(OFString *__asm__("a0")))(((uintptr_t)ObjFWBase) - 258))(path); +#elif defined(OF_MORPHOS) + __asm__ __volatile__ ( + "mr %%r12, %0" + :: "r"(ObjFWBase) : "r12" + ); + + return __extension__ ((OFSocketAddress (*)(OFString *))*(void **)(((uintptr_t)ObjFWBase) - 256))(path); +#endif +} + +OFSocketAddress +OFSocketAddressMakeIPX(uint32_t network, const unsigned char *node, uint16_t port) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((OFSocketAddress (*)(const unsigned char *_Nonnull __asm__("a0"), uint32_t __asm__("d0"), uint16_t __asm__("d1")))(((uintptr_t)ObjFWBase) - 258))(node, network, port); + return ((OFSocketAddress (*)(uint32_t __asm__("d0"), const unsigned char *__asm__("a0"), uint16_t __asm__("d1")))(((uintptr_t)ObjFWBase) - 264))(network, node, port); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((OFSocketAddress (*)(const unsigned char *_Nonnull, uint32_t, uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 256))(node, network, port); + return __extension__ ((OFSocketAddress (*)(uint32_t, const unsigned char *, uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 262))(network, node, port); #endif } bool -OFSocketAddressEqual(const OFSocketAddress *_Nonnull address1, const OFSocketAddress *_Nonnull address2) +OFSocketAddressEqual(const OFSocketAddress *address1, const OFSocketAddress *address2) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((bool (*)(const OFSocketAddress *_Nonnull __asm__("a0"), const OFSocketAddress *_Nonnull __asm__("a1")))(((uintptr_t)ObjFWBase) - 264))(address1, address2); + return ((bool (*)(const OFSocketAddress *__asm__("a0"), const OFSocketAddress *__asm__("a1")))(((uintptr_t)ObjFWBase) - 270))(address1, address2); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((bool (*)(const OFSocketAddress *_Nonnull, const OFSocketAddress *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 262))(address1, address2); + return __extension__ ((bool (*)(const OFSocketAddress *, const OFSocketAddress *))*(void **)(((uintptr_t)ObjFWBase) - 268))(address1, address2); #endif } unsigned long -OFSocketAddressHash(const OFSocketAddress *_Nonnull address) +OFSocketAddressHash(const OFSocketAddress *address) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((unsigned long (*)(const OFSocketAddress *_Nonnull __asm__("a0")))(((uintptr_t)ObjFWBase) - 270))(address); + return ((unsigned long (*)(const OFSocketAddress *__asm__("a0")))(((uintptr_t)ObjFWBase) - 276))(address); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((unsigned long (*)(const OFSocketAddress *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 268))(address); + return __extension__ ((unsigned long (*)(const OFSocketAddress *))*(void **)(((uintptr_t)ObjFWBase) - 274))(address); #endif } OFString *_Nonnull -OFSocketAddressString(const OFSocketAddress *_Nonnull address) +OFSocketAddressString(const OFSocketAddress *address) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((OFString *_Nonnull (*)(const OFSocketAddress *_Nonnull __asm__("a0")))(((uintptr_t)ObjFWBase) - 276))(address); + return ((OFString *_Nonnull (*)(const OFSocketAddress *__asm__("a0")))(((uintptr_t)ObjFWBase) - 282))(address); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((OFString *_Nonnull (*)(const OFSocketAddress *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 274))(address); + return __extension__ ((OFString *_Nonnull (*)(const OFSocketAddress *))*(void **)(((uintptr_t)ObjFWBase) - 280))(address); #endif } void -OFSocketAddressSetPort(OFSocketAddress *_Nonnull address, uint16_t port) +OFSocketAddressSetPort(OFSocketAddress *address, uint16_t port) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - ((void (*)(OFSocketAddress *_Nonnull __asm__("a0"), uint16_t __asm__("d0")))(((uintptr_t)ObjFWBase) - 282))(address, port); + ((void (*)(OFSocketAddress *__asm__("a0"), uint16_t __asm__("d0")))(((uintptr_t)ObjFWBase) - 288))(address, port); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - __extension__ ((void (*)(OFSocketAddress *_Nonnull, uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 280))(address, port); + __extension__ ((void (*)(OFSocketAddress *, uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 286))(address, port); #endif } uint16_t -OFSocketAddressPort(const OFSocketAddress *_Nonnull address) +OFSocketAddressPort(const OFSocketAddress *address) +{ +#if defined(OF_AMIGAOS_M68K) + register struct Library *a6 __asm__("a6") = ObjFWBase; + (void)a6; + return ((uint16_t (*)(const OFSocketAddress *__asm__("a0")))(((uintptr_t)ObjFWBase) - 294))(address); +#elif defined(OF_MORPHOS) + __asm__ __volatile__ ( + "mr %%r12, %0" + :: "r"(ObjFWBase) : "r12" + ); + + return __extension__ ((uint16_t (*)(const OFSocketAddress *))*(void **)(((uintptr_t)ObjFWBase) - 292))(address); +#endif +} + +OFString * +OFSocketAddressUNIXPath(const OFSocketAddress *address) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((uint16_t (*)(const OFSocketAddress *_Nonnull __asm__("a0")))(((uintptr_t)ObjFWBase) - 288))(address); + return ((OFString *(*)(const OFSocketAddress *__asm__("a0")))(((uintptr_t)ObjFWBase) - 300))(address); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((uint16_t (*)(const OFSocketAddress *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 286))(address); + return __extension__ ((OFString *(*)(const OFSocketAddress *))*(void **)(((uintptr_t)ObjFWBase) - 298))(address); #endif } void -OFSocketAddressSetIPXNetwork(OFSocketAddress *_Nonnull address, uint32_t network) +OFSocketAddressSetIPXNetwork(OFSocketAddress *address, uint32_t network) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - ((void (*)(OFSocketAddress *_Nonnull __asm__("a0"), uint32_t __asm__("d0")))(((uintptr_t)ObjFWBase) - 294))(address, network); + ((void (*)(OFSocketAddress *__asm__("a0"), uint32_t __asm__("d0")))(((uintptr_t)ObjFWBase) - 306))(address, network); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - __extension__ ((void (*)(OFSocketAddress *_Nonnull, uint32_t))*(void **)(((uintptr_t)ObjFWBase) - 292))(address, network); + __extension__ ((void (*)(OFSocketAddress *, uint32_t))*(void **)(((uintptr_t)ObjFWBase) - 304))(address, network); #endif } uint32_t -OFSocketAddressIPXNetwork(const OFSocketAddress *_Nonnull address) -{ -#if defined(OF_AMIGAOS_M68K) - register struct Library *a6 __asm__("a6") = ObjFWBase; - (void)a6; - return ((uint32_t (*)(const OFSocketAddress *_Nonnull __asm__("a0")))(((uintptr_t)ObjFWBase) - 300))(address); -#elif defined(OF_MORPHOS) - __asm__ __volatile__ ( - "mr %%r12, %0" - :: "r"(ObjFWBase) : "r12" - ); - - return __extension__ ((uint32_t (*)(const OFSocketAddress *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 298))(address); -#endif -} - -void -OFSocketAddressSetIPXNode(OFSocketAddress *_Nonnull address, const unsigned char *_Nonnull node) -{ -#if defined(OF_AMIGAOS_M68K) - register struct Library *a6 __asm__("a6") = ObjFWBase; - (void)a6; - ((void (*)(OFSocketAddress *_Nonnull __asm__("a0"), const unsigned char *_Nonnull __asm__("a1")))(((uintptr_t)ObjFWBase) - 306))(address, node); -#elif defined(OF_MORPHOS) - __asm__ __volatile__ ( - "mr %%r12, %0" - :: "r"(ObjFWBase) : "r12" - ); - - __extension__ ((void (*)(OFSocketAddress *_Nonnull, const unsigned char *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 304))(address, node); -#endif -} - -void -OFSocketAddressIPXNode(const OFSocketAddress *_Nonnull address, unsigned char *_Nonnull node) -{ -#if defined(OF_AMIGAOS_M68K) - register struct Library *a6 __asm__("a6") = ObjFWBase; - (void)a6; - ((void (*)(const OFSocketAddress *_Nonnull __asm__("a0"), unsigned char *_Nonnull __asm__("a1")))(((uintptr_t)ObjFWBase) - 312))(address, node); -#elif defined(OF_MORPHOS) - __asm__ __volatile__ ( - "mr %%r12, %0" - :: "r"(ObjFWBase) : "r12" - ); - - __extension__ ((void (*)(const OFSocketAddress *_Nonnull, unsigned char *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 310))(address, node); +OFSocketAddressIPXNetwork(const OFSocketAddress *address) +{ +#if defined(OF_AMIGAOS_M68K) + register struct Library *a6 __asm__("a6") = ObjFWBase; + (void)a6; + return ((uint32_t (*)(const OFSocketAddress *__asm__("a0")))(((uintptr_t)ObjFWBase) - 312))(address); +#elif defined(OF_MORPHOS) + __asm__ __volatile__ ( + "mr %%r12, %0" + :: "r"(ObjFWBase) : "r12" + ); + + return __extension__ ((uint32_t (*)(const OFSocketAddress *))*(void **)(((uintptr_t)ObjFWBase) - 310))(address); +#endif +} + +void +OFSocketAddressSetIPXNode(OFSocketAddress *address, const unsigned char *node) +{ +#if defined(OF_AMIGAOS_M68K) + register struct Library *a6 __asm__("a6") = ObjFWBase; + (void)a6; + ((void (*)(OFSocketAddress *__asm__("a0"), const unsigned char *__asm__("a1")))(((uintptr_t)ObjFWBase) - 318))(address, node); +#elif defined(OF_MORPHOS) + __asm__ __volatile__ ( + "mr %%r12, %0" + :: "r"(ObjFWBase) : "r12" + ); + + __extension__ ((void (*)(OFSocketAddress *, const unsigned char *))*(void **)(((uintptr_t)ObjFWBase) - 316))(address, node); +#endif +} + +void +OFSocketAddressIPXNode(const OFSocketAddress *address, unsigned char *_Nonnull node) +{ +#if defined(OF_AMIGAOS_M68K) + register struct Library *a6 __asm__("a6") = ObjFWBase; + (void)a6; + ((void (*)(const OFSocketAddress *__asm__("a0"), unsigned char *_Nonnull __asm__("a1")))(((uintptr_t)ObjFWBase) - 324))(address, node); +#elif defined(OF_MORPHOS) + __asm__ __volatile__ ( + "mr %%r12, %0" + :: "r"(ObjFWBase) : "r12" + ); + + __extension__ ((void (*)(const OFSocketAddress *, unsigned char *_Nonnull))*(void **)(((uintptr_t)ObjFWBase) - 322))(address, node); +#endif +} + +OFString * +OFTLSStreamErrorCodeDescription(OFTLSStreamErrorCode errorCode) +{ +#if defined(OF_AMIGAOS_M68K) + register struct Library *a6 __asm__("a6") = ObjFWBase; + (void)a6; + return ((OFString *(*)(OFTLSStreamErrorCode __asm__("d0")))(((uintptr_t)ObjFWBase) - 330))(errorCode); +#elif defined(OF_MORPHOS) + __asm__ __volatile__ ( + "mr %%r12, %0" + :: "r"(ObjFWBase) : "r12" + ); + + return __extension__ ((OFString *(*)(OFTLSStreamErrorCode))*(void **)(((uintptr_t)ObjFWBase) - 328))(errorCode); #endif } const char *_Nullable OFStrPTime(const char *buffer, const char *format, struct tm *tm, int16_t *_Nullable tz) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((const char *_Nullable (*)(const char *__asm__("a0"), const char *__asm__("a1"), struct tm *__asm__("a2"), int16_t *_Nullable __asm__("a3")))(((uintptr_t)ObjFWBase) - 318))(buffer, format, tm, tz); + return ((const char *_Nullable (*)(const char *__asm__("a0"), const char *__asm__("a1"), struct tm *__asm__("a2"), int16_t *_Nullable __asm__("a3")))(((uintptr_t)ObjFWBase) - 336))(buffer, format, tm, tz); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((const char *_Nullable (*)(const char *, const char *, struct tm *, int16_t *_Nullable))*(void **)(((uintptr_t)ObjFWBase) - 316))(buffer, format, tm, tz); + return __extension__ ((const char *_Nullable (*)(const char *, const char *, struct tm *, int16_t *_Nullable))*(void **)(((uintptr_t)ObjFWBase) - 334))(buffer, format, tm, tz); #endif } OFStringEncoding OFStringEncodingParseName(OFString *string) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((OFStringEncoding (*)(OFString *__asm__("a0")))(((uintptr_t)ObjFWBase) - 324))(string); + return ((OFStringEncoding (*)(OFString *__asm__("a0")))(((uintptr_t)ObjFWBase) - 342))(string); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((OFStringEncoding (*)(OFString *))*(void **)(((uintptr_t)ObjFWBase) - 322))(string); + return __extension__ ((OFStringEncoding (*)(OFString *))*(void **)(((uintptr_t)ObjFWBase) - 340))(string); #endif } OFString *_Nullable OFStringEncodingName(OFStringEncoding encoding) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((OFString *_Nullable (*)(OFStringEncoding __asm__("d0")))(((uintptr_t)ObjFWBase) - 330))(encoding); + return ((OFString *_Nullable (*)(OFStringEncoding __asm__("d0")))(((uintptr_t)ObjFWBase) - 348))(encoding); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((OFString *_Nullable (*)(OFStringEncoding))*(void **)(((uintptr_t)ObjFWBase) - 328))(encoding); + return __extension__ ((OFString *_Nullable (*)(OFStringEncoding))*(void **)(((uintptr_t)ObjFWBase) - 346))(encoding); #endif } size_t OFUTF16StringLength(const OFChar16 *string) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((size_t (*)(const OFChar16 *__asm__("a0")))(((uintptr_t)ObjFWBase) - 336))(string); + return ((size_t (*)(const OFChar16 *__asm__("a0")))(((uintptr_t)ObjFWBase) - 354))(string); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((size_t (*)(const OFChar16 *))*(void **)(((uintptr_t)ObjFWBase) - 334))(string); + return __extension__ ((size_t (*)(const OFChar16 *))*(void **)(((uintptr_t)ObjFWBase) - 352))(string); #endif } size_t OFUTF32StringLength(const OFChar32 *string) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((size_t (*)(const OFChar32 *__asm__("a0")))(((uintptr_t)ObjFWBase) - 342))(string); + return ((size_t (*)(const OFChar32 *__asm__("a0")))(((uintptr_t)ObjFWBase) - 360))(string); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((size_t (*)(const OFChar32 *))*(void **)(((uintptr_t)ObjFWBase) - 340))(string); + return __extension__ ((size_t (*)(const OFChar32 *))*(void **)(((uintptr_t)ObjFWBase) - 358))(string); #endif } OFString *_Nonnull OFZIPArchiveEntryVersionToString(uint16_t version) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((OFString *_Nonnull (*)(uint16_t __asm__("d0")))(((uintptr_t)ObjFWBase) - 348))(version); + return ((OFString *_Nonnull (*)(uint16_t __asm__("d0")))(((uintptr_t)ObjFWBase) - 366))(version); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((OFString *_Nonnull (*)(uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 346))(version); + return __extension__ ((OFString *_Nonnull (*)(uint16_t))*(void **)(((uintptr_t)ObjFWBase) - 364))(version); #endif } OFString *_Nonnull OFZIPArchiveEntryCompressionMethodName(OFZIPArchiveEntryCompressionMethod compressionMethod) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((OFString *_Nonnull (*)(OFZIPArchiveEntryCompressionMethod __asm__("d0")))(((uintptr_t)ObjFWBase) - 354))(compressionMethod); + return ((OFString *_Nonnull (*)(OFZIPArchiveEntryCompressionMethod __asm__("d0")))(((uintptr_t)ObjFWBase) - 372))(compressionMethod); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((OFString *_Nonnull (*)(OFZIPArchiveEntryCompressionMethod))*(void **)(((uintptr_t)ObjFWBase) - 352))(compressionMethod); + return __extension__ ((OFString *_Nonnull (*)(OFZIPArchiveEntryCompressionMethod))*(void **)(((uintptr_t)ObjFWBase) - 370))(compressionMethod); #endif } size_t OFZIPArchiveEntryExtraFieldFind(OFData *extraField, OFZIPArchiveEntryExtraFieldTag tag, uint16_t *size) { #if defined(OF_AMIGAOS_M68K) register struct Library *a6 __asm__("a6") = ObjFWBase; (void)a6; - return ((size_t (*)(OFData *__asm__("a0"), OFZIPArchiveEntryExtraFieldTag __asm__("d0"), uint16_t *__asm__("a1")))(((uintptr_t)ObjFWBase) - 360))(extraField, tag, size); + return ((size_t (*)(OFData *__asm__("a0"), OFZIPArchiveEntryExtraFieldTag __asm__("d0"), uint16_t *__asm__("a1")))(((uintptr_t)ObjFWBase) - 378))(extraField, tag, size); #elif defined(OF_MORPHOS) __asm__ __volatile__ ( "mr %%r12, %0" :: "r"(ObjFWBase) : "r12" ); - return __extension__ ((size_t (*)(OFData *, OFZIPArchiveEntryExtraFieldTag, uint16_t *))*(void **)(((uintptr_t)ObjFWBase) - 358))(extraField, tag, size); + return __extension__ ((size_t (*)(OFData *, OFZIPArchiveEntryExtraFieldTag, uint16_t *))*(void **)(((uintptr_t)ObjFWBase) - 376))(extraField, tag, size); #endif }