Pārlūkot izejas kodu

Return port number in host byte order. Fixes #30.

woollybah 6 gadi atpakaļ
vecāks
revīzija
eb02e1d105
1 mainītis faili ar 4 papildinājumiem un 4 dzēšanām
  1. 4 4
      stdc.mod/stdc.c

+ 4 - 4
stdc.mod/stdc.c

@@ -910,9 +910,9 @@ BBString * bmx_stdc_getsockname(int socket, int * port) {
 	
 	if (res >= 0) {
 		if (storage.ss_family == AF_INET) {
-			*port = ((struct sockaddr_in*)&storage)->sin_port;
+			*port = ntohs(((struct sockaddr_in*)&storage)->sin_port);
 		} else {
-			*port = ((struct sockaddr_in6*)&storage)->sin6_port;
+			*port = ntohs(((struct sockaddr_in6*)&storage)->sin6_port);
 		}
 		
 		address = bmx_stdc_sockaddrestorage_address(&storage);
@@ -932,9 +932,9 @@ BBString * bmx_stdc_getpeername(int socket, int * port) {
 	
 	if (res >= 0) {
 		if (storage.ss_family == AF_INET) {
-			*port = ((struct sockaddr_in*)&storage)->sin_port;
+			*port = ntohs(((struct sockaddr_in*)&storage)->sin_port);
 		} else {
-			*port = ((struct sockaddr_in6*)&storage)->sin6_port;
+			*port = ntohs(((struct sockaddr_in6*)&storage)->sin6_port);
 		}
 		
 		address = bmx_stdc_sockaddrestorage_address(&storage);