mirror of
https://github.com/QB64-Phoenix-Edition/QB64pe.git
synced 2024-09-07 17:40:16 +00:00
125 lines
2.2 KiB
C
125 lines
2.2 KiB
C
/**
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
* This file is part of the mingw-w64 runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
|
|
*/
|
|
|
|
#ifndef _MINGW_IP_TYPES_H
|
|
#define _MINGW_IP_TYPES_H
|
|
|
|
#ifdef __LP64__
|
|
#pragma push_macro("u_long")
|
|
#undef u_long
|
|
#define u_long __ms_u_long
|
|
#endif
|
|
|
|
#include <_bsd_types.h>
|
|
|
|
#ifndef __INSIDE_CYGWIN__
|
|
|
|
#include <inaddr.h>
|
|
#include <_timeval.h>
|
|
|
|
#define h_addr h_addr_list[0]
|
|
|
|
struct hostent {
|
|
char *h_name;
|
|
char **h_aliases;
|
|
short h_addrtype;
|
|
short h_length;
|
|
char **h_addr_list;
|
|
};
|
|
|
|
struct netent {
|
|
char *n_name;
|
|
char **n_aliases;
|
|
short n_addrtype;
|
|
u_long n_net;
|
|
};
|
|
|
|
struct servent {
|
|
char *s_name;
|
|
char **s_aliases;
|
|
#ifdef _WIN64
|
|
char *s_proto;
|
|
short s_port;
|
|
#else
|
|
short s_port;
|
|
char *s_proto;
|
|
#endif
|
|
};
|
|
|
|
struct protoent {
|
|
char *p_name;
|
|
char **p_aliases;
|
|
short p_proto;
|
|
};
|
|
|
|
struct sockproto {
|
|
u_short sp_family;
|
|
u_short sp_protocol;
|
|
};
|
|
|
|
struct linger {
|
|
u_short l_onoff;
|
|
u_short l_linger;
|
|
};
|
|
|
|
#endif /* !__INSIDE_CYGWIN__ */
|
|
|
|
struct sockaddr {
|
|
u_short sa_family;
|
|
char sa_data[14];
|
|
};
|
|
|
|
struct sockaddr_in {
|
|
short sin_family;
|
|
u_short sin_port;
|
|
struct in_addr sin_addr;
|
|
char sin_zero[8];
|
|
};
|
|
|
|
typedef struct hostent HOSTENT;
|
|
typedef struct hostent *PHOSTENT;
|
|
typedef struct hostent *LPHOSTENT;
|
|
|
|
typedef struct servent SERVENT;
|
|
typedef struct servent *PSERVENT;
|
|
typedef struct servent *LPSERVENT;
|
|
|
|
typedef struct protoent PROTOENT;
|
|
typedef struct protoent *PPROTOENT;
|
|
typedef struct protoent *LPPROTOENT;
|
|
|
|
typedef struct sockaddr SOCKADDR;
|
|
typedef struct sockaddr *PSOCKADDR;
|
|
typedef struct sockaddr *LPSOCKADDR;
|
|
|
|
typedef struct sockaddr_in SOCKADDR_IN;
|
|
typedef struct sockaddr_in *PSOCKADDR_IN;
|
|
typedef struct sockaddr_in *LPSOCKADDR_IN;
|
|
|
|
typedef struct linger LINGER;
|
|
typedef struct linger *PLINGER;
|
|
typedef struct linger *LPLINGER;
|
|
|
|
#ifdef __LP64__
|
|
struct __ms_timeval {
|
|
__LONG32 tv_sec;
|
|
__LONG32 tv_usec;
|
|
};
|
|
typedef struct __ms_timeval TIMEVAL;
|
|
typedef struct __ms_timeval *PTIMEVAL;
|
|
typedef struct __ms_timeval *LPTIMEVAL;
|
|
#else
|
|
typedef struct timeval TIMEVAL;
|
|
typedef struct timeval *PTIMEVAL;
|
|
typedef struct timeval *LPTIMEVAL;
|
|
#endif
|
|
|
|
#ifdef __LP64__
|
|
#pragma pop_macro("u_long")
|
|
#endif
|
|
|
|
#endif /* _MINGW_IP_TYPES_H */
|
|
|