Overview
Comment: | Cast several socket-related arguments to void *
This is required to make it work on MorphOS with -noixemul, as socket |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
c658e97994d676f06a9d2ce188b667c2 |
User & Date: | js on 2017-05-21 20:03:06 |
Other Links: | manifest | tags |
Context
2017-05-21
| ||
20:13 | OFKernelEventObserver: #if HAVE_* -> #ifdef HAVE_* check-in: 32e8c1ee4c user: js tags: trunk | |
20:03 | Cast several socket-related arguments to void * check-in: c658e97994 user: js tags: trunk | |
19:40 | OFFileManager: Fix wrong #else check-in: a2711b2a01 user: js tags: trunk | |
Changes
Modified src/OFKernelEventObserver.m from [57631eb71f] to [75fadf5f06].
︙ | ︙ | |||
119 120 121 122 123 124 125 | if (_cancelFD[0] == INVALID_SOCKET) @throw [OFInitializationFailedException exceptionWithClass: [self class]]; _cancelAddr.sin_family = AF_INET; _cancelAddr.sin_port = 0; | | > | 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 | if (_cancelFD[0] == INVALID_SOCKET) @throw [OFInitializationFailedException exceptionWithClass: [self class]]; _cancelAddr.sin_family = AF_INET; _cancelAddr.sin_port = 0; _cancelAddr.sin_addr.s_addr = inet_addr((const void *)"127.0.0.1"); # ifdef OF_WII _cancelAddr.sin_len = 8; # endif # if !defined(OF_WII) && !defined(OF_NINTENDO_3DS) if (bind(_cancelFD[0], (struct sockaddr *)&_cancelAddr, sizeof(_cancelAddr)) != 0) |
︙ | ︙ | |||
407 408 409 410 411 412 413 | [self observeForTimeInterval: [date timeIntervalSinceNow]]; } - (void)cancel { #ifdef OF_HAVE_PIPE OF_ENSURE(write(_cancelFD[1], "", 1) > 0); | < | | | | | < | 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 | [self observeForTimeInterval: [date timeIntervalSinceNow]]; } - (void)cancel { #ifdef OF_HAVE_PIPE OF_ENSURE(write(_cancelFD[1], "", 1) > 0); #elif defined(OF_WII) OF_ENSURE(sendto(_cancelFD[1], "", 1, 0, (struct sockaddr *)&_cancelAddr, 8) > 0); #else OF_ENSURE(sendto(_cancelFD[1], (const void *)"", 1, 0, (struct sockaddr *)&_cancelAddr, sizeof(_cancelAddr)) > 0); #endif } @end |
Modified src/OFKernelEventObserver_select.m from [e55d2ae955] to [ca3998cc6e].
︙ | ︙ | |||
179 180 181 182 183 184 185 | if (FD_ISSET(_cancelFD[0], &readFDs)) { char buffer; #ifdef OF_HAVE_PIPE OF_ENSURE(read(_cancelFD[0], &buffer, 1) == 1); #else | | | 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 | if (FD_ISSET(_cancelFD[0], &readFDs)) { char buffer; #ifdef OF_HAVE_PIPE OF_ENSURE(read(_cancelFD[0], &buffer, 1) == 1); #else OF_ENSURE(recvfrom(_cancelFD[0], (void *)&buffer, 1, 0, NULL, NULL) == 1); #endif } objects = [_readObjects objects]; count = [_readObjects count]; |
︙ | ︙ |
Modified src/OFTCPSocket+SOCKS5.m from [c2070c1b40] to [4fe5e359bb].
︙ | ︙ | |||
29 30 31 32 33 34 35 | /* Reference for static linking */ int _OFTCPSocket_SOCKS5_reference; static void send_or_exception(OFTCPSocket *self, of_socket_t socket, char *buffer, int length) { | | | | 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | /* Reference for static linking */ int _OFTCPSocket_SOCKS5_reference; static void send_or_exception(OFTCPSocket *self, of_socket_t socket, char *buffer, int length) { if (send(socket, (const void *)buffer, length, 0) != length) @throw [OFWriteFailedException exceptionWithObject: self requestedLength: length errNo: of_socket_errno()]; } static void recv_exact(OFTCPSocket *self, of_socket_t socket, char *buffer, int length) { while (length > 0) { ssize_t ret = recv(socket, (void *)buffer, length, 0); if (ret < 0) @throw [OFReadFailedException exceptionWithObject: self requestedLength: length errNo: of_socket_errno()]; |
︙ | ︙ |
Modified src/resolver.m from [a07fe0ff30] to [9669c4a7c7].
︙ | ︙ | |||
139 140 141 142 143 144 145 | struct sockaddr_in *addrs, *addrsIter; /* * If the host is an IP address, don't try resolving it. On the * Wii for example, the resolver will return an error if you * specify an IP address. */ | | > | 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 | struct sockaddr_in *addrs, *addrsIter; /* * If the host is an IP address, don't try resolving it. On the * Wii for example, the resolver will return an error if you * specify an IP address. */ if ((s_addr = inet_addr((const void *)[host UTF8String])) != INADDR_NONE) { of_resolver_result_t *tmp; struct sockaddr_in *addr; if ((ret = calloc(2, sizeof(*ret))) == NULL) @throw [OFOutOfMemoryException exceptionWithRequestedSize: 2 * sizeof(*ret)]; |
︙ | ︙ | |||
184 185 186 187 188 189 190 | ret[0] = tmp; ret[1] = NULL; return ret; } | | | | 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 | ret[0] = tmp; ret[1] = NULL; return ret; } if ((he = gethostbyname((const void *)[host UTF8String])) == NULL || he->h_addrtype != AF_INET) @throw [OFAddressTranslationFailedException exceptionWithHost: host error: h_errno]; count = 0; for (ip = he->h_addr_list; *ip != NULL; ip++) count++; |
︙ | ︙ |