Kernel+LibC: Stub out getifaddrs() and freeifaddrs()

These are required for some ports.
This commit is contained in:
Idan Horowitz 2021-12-05 02:09:47 +02:00 committed by Brian Gianforcaro
parent 468ae105d8
commit 7b24fc6fb8
Notes: sideshowbarker 2024-07-17 22:23:49 +09:00
4 changed files with 66 additions and 0 deletions

View File

@ -0,0 +1,30 @@
/*
* Copyright (c) 2021, Idan Horowitz <idan.horowitz@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
struct ifaddrs {
struct ifaddrs* ifa_next;
char* ifa_name;
unsigned int ifa_flags;
struct sockaddr* ifa_addr;
struct sockaddr* ifa_netmask;
union {
struct sockaddr* ifu_broadaddr;
struct sockaddr* ifu_dstaddr;
} ifa_ifu;
#define ifa_broadaddr ifa_ifu.ifu_broadaddr
#define ifa_dstaddr ifa_ifu.ifu_dstaddr
void* ifa_data;
};
#ifdef __cplusplus
}
#endif

View File

@ -8,6 +8,7 @@ set(LIBC_SOURCES
fcntl.cpp
fenv.cpp
fnmatch.cpp
ifaddrs.cpp
getopt.cpp
grp.cpp
inttypes.cpp

View File

@ -0,0 +1,18 @@
/*
* Copyright (c) 2021, Idan Horowitz <idan.horowitz@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include <LibC/errno.h>
#include <LibC/ifaddrs.h>
int getifaddrs(struct ifaddrs**)
{
errno = ENOSYS;
return -1;
}
void freeifaddrs(struct ifaddrs*)
{
}

View File

@ -0,0 +1,17 @@
/*
* Copyright (c) 2021, Idan Horowitz <idan.horowitz@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <Kernel/API/POSIX/ifaddrs.h>
#include <sys/cdefs.h>
__BEGIN_DECLS
int getifaddrs(struct ifaddrs** ifap);
void freeifaddrs(struct ifaddrs* ifa);
__END_DECLS