ObjFW  Check-in [006e494026]

Overview
Comment:Fix +[OFSystemInfo networkInterfaces] on OpenBSD
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | 1.0
Files: files | file ages | folders
SHA3-256: 006e494026b4d39131506723df03063d8376fb086b6bf09e2dbadf8f69b6b323
User & Date: js on 2023-10-15 17:23:51
Other Links: branch diff | manifest | tags
Context
2023-10-15
17:40
Don't rely on inet6_getscopeid for KAME check-in: 703d77b0cb user: js tags: 1.0
17:23
Fix +[OFSystemInfo networkInterfaces] on OpenBSD check-in: 006e494026 user: js tags: 1.0
17:23
Fix +[OFSystemInfo networkInterfaces] on OpenBSD check-in: 87bd80a1d1 user: js tags: trunk
2023-10-08
11:49
Set version to 1.0.4 check-in: c1c235845a user: js tags: 1.0, 1.0.4-release
Changes

Modified configure.ac from [bf34aea37f] to [f7f0966b8b].

1373
1374
1375
1376
1377
1378
1379











1380
1381
1382
1383
1384
1385
1386
		AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket")
		;;
	esac

	AC_CHECK_HEADER(sys/socket.h, [
		AC_DEFINE(OF_HAVE_SYS_SOCKET_H, 1,
			[Whether we have sys/socket.h])











	])
	AC_CHECK_TYPE([struct sockaddr_storage], [
		AC_DEFINE(OF_HAVE_SOCKADDR_STORAGE, 1,
			[Whether we have struct sockaddr_storage])
	], [], [
		#ifdef OF_HAVE_SYS_TYPES_H
		# include <sys/types.h>







>
>
>
>
>
>
>
>
>
>
>







1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
		AC_CHECK_LIB(socket, socket, LIBS="$LIBS -lsocket")
		;;
	esac

	AC_CHECK_HEADER(sys/socket.h, [
		AC_DEFINE(OF_HAVE_SYS_SOCKET_H, 1,
			[Whether we have sys/socket.h])
	])
	AC_CHECK_MEMBERS([struct sockaddr.sa_len], [], [], [
		#ifdef OF_HAVE_SYS_TYPES_H
		# include <sys/types.h>
		#endif
		#ifdef OF_HAVE_SYS_SOCKET_H
		# include <sys/socket.h>
		#endif
		#ifdef _WIN32
		# include <winsock2.h>
		#endif
	])
	AC_CHECK_TYPE([struct sockaddr_storage], [
		AC_DEFINE(OF_HAVE_SOCKADDR_STORAGE, 1,
			[Whether we have struct sockaddr_storage])
	], [], [
		#ifdef OF_HAVE_SYS_TYPES_H
		# include <sys/types.h>

Modified src/platform/POSIX/OFSystemInfo+NetworkInterfaces.m from [4ddf302e5d] to [f0d0641f3a].

237
238
239
240
241
242
243
244

245


246

247
248
249
250
251
252
253
254
255
#   endif
			}
#  endif

			[addresses addItem: &address];

next:
# ifdef _SIZEOF_ADDR_IFREQ

			buffer += _SIZEOF_ADDR_IFREQ(*current);


# else

			buffer += sizeof(struct ifreq);
# endif
		}
	} @finally {
		free(ifrs);
		closesocket(sock);
	}
# endif








|
>
|
>
>
|
>
|
<







237
238
239
240
241
242
243
244
245
246
247
248
249
250
251

252
253
254
255
256
257
258
#   endif
			}
#  endif

			[addresses addItem: &address];

next:
#  ifdef HAVE_STRUCT_SOCKADDR_SA_LEN
			if (current->ifr_addr.sa_len > sizeof(struct sockaddr))
				buffer += sizeof(struct ifreq) -
				    sizeof(struct sockaddr) +
				    current->ifr_addr.sa_len;
			else
#  endif
				buffer += sizeof(struct ifreq);

		}
	} @finally {
		free(ifrs);
		closesocket(sock);
	}
# endif