* Added _ALIGN() and _ALIGNBYTES macros.
* Added cmsg macros. * Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22172 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1,26 +1,33 @@
|
|||||||
|
/*
|
||||||
|
* Copyright 2002-2007, Haiku Inc. All Rights Reserved.
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*/
|
||||||
#ifndef _SYS_PARAM_H
|
#ifndef _SYS_PARAM_H
|
||||||
#define _SYS_PARAM_H
|
#define _SYS_PARAM_H
|
||||||
/*
|
|
||||||
** Distributed under the terms of the OpenBeOS License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
|
|
||||||
|
|
||||||
#define MAXPATHLEN PATH_MAX
|
#define MAXPATHLEN PATH_MAX
|
||||||
#define MAXSYMLINKS SYMLOOP_MAX
|
#define MAXSYMLINKS SYMLOOP_MAX
|
||||||
|
|
||||||
#define NOFILE OPEN_MAX
|
#define NOFILE OPEN_MAX
|
||||||
|
|
||||||
#ifndef MIN
|
#ifndef MIN
|
||||||
#define MIN(a,b) (((a) < (b)) ? (a) : (b))
|
# define MIN(a,b) (((a) < (b)) ? (a) : (b))
|
||||||
#endif
|
#endif
|
||||||
#ifndef MAX
|
#ifndef MAX
|
||||||
#define MAX(a,b) (((a) > (b)) ? (a) : (b))
|
# define MAX(a,b) (((a) > (b)) ? (a) : (b))
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define _ALIGNBYTES (sizeof(long) - 1)
|
||||||
|
#define _ALIGN(p) \
|
||||||
|
(((u_long)(p) + _ALIGNBYTES) &~ _ALIGNBYTES)
|
||||||
|
|
||||||
/* maximum possible length of this machine's hostname */
|
/* maximum possible length of this machine's hostname */
|
||||||
#ifndef MAXHOSTNAMELEN
|
#ifndef MAXHOSTNAMELEN
|
||||||
#define MAXHOSTNAMELEN 256
|
# define MAXHOSTNAMELEN 256
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#endif /* _SYS_PARAM_H */
|
#endif /* _SYS_PARAM_H */
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2006, Haiku Inc. All Rights Reserved.
|
* Copyright 2002-2007, Haiku Inc. All Rights Reserved.
|
||||||
* Distributed under the terms of the MIT License.
|
* Distributed under the terms of the MIT License.
|
||||||
*/
|
*/
|
||||||
#ifndef _SYS_SOCKET_H
|
#ifndef _SYS_SOCKET_H
|
||||||
@@ -122,17 +122,36 @@ struct cmsghdr {
|
|||||||
/* data follows */
|
/* data follows */
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* cmsghdr access macros */
|
||||||
|
#define CMSG_DATA(cmsg) ((unsigned char *)(cmsg) \
|
||||||
|
+ _ALIGN(sizeof(struct cmsghdr)))
|
||||||
|
#define CMSG_NXTHDR(mhdr, cmsg) \
|
||||||
|
(((char *)(cmsg) + _ALIGN((cmsg)->cmsg_len) \
|
||||||
|
+ _ALIGN(sizeof(struct cmsghdr)) \
|
||||||
|
> (char *)(mhdr)->msg_control + (mhdr)->msg_controllen) \
|
||||||
|
? (struct cmsghdr *)NULL \
|
||||||
|
: (struct cmsghdr *)((char *)(cmsg) + _ALIGN((cmsg)->cmsg_len)))
|
||||||
|
#define CMSG_FIRSTHDR(mhdr) \
|
||||||
|
((mhdr)->msg_controllen >= sizeof(struct cmsghdr) \
|
||||||
|
? (struct cmsghdr *)(mhdr)->msg_control \
|
||||||
|
: (struct cmsghdr *)NULL)
|
||||||
|
|
||||||
|
|
||||||
#if __cplusplus
|
#if __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
int accept(int socket, struct sockaddr *address, socklen_t *_addressLength);
|
int accept(int socket, struct sockaddr *address, socklen_t *_addressLength);
|
||||||
int bind(int socket, const struct sockaddr *address, socklen_t addressLength);
|
int bind(int socket, const struct sockaddr *address,
|
||||||
int connect(int socket, const struct sockaddr *address, socklen_t addressLength);
|
socklen_t addressLength);
|
||||||
int getpeername(int socket, struct sockaddr *address, socklen_t *_addressLength);
|
int connect(int socket, const struct sockaddr *address,
|
||||||
int getsockname(int socket, struct sockaddr *address, socklen_t *_addressLength);
|
socklen_t addressLength);
|
||||||
int getsockopt(int socket, int level, int option, void *value, socklen_t *_length);
|
int getpeername(int socket, struct sockaddr *address,
|
||||||
|
socklen_t *_addressLength);
|
||||||
|
int getsockname(int socket, struct sockaddr *address,
|
||||||
|
socklen_t *_addressLength);
|
||||||
|
int getsockopt(int socket, int level, int option, void *value,
|
||||||
|
socklen_t *_length);
|
||||||
int listen(int socket, int backlog);
|
int listen(int socket, int backlog);
|
||||||
ssize_t recv(int socket, void *buffer, size_t length, int flags);
|
ssize_t recv(int socket, void *buffer, size_t length, int flags);
|
||||||
ssize_t recvfrom(int socket, void *buffer, size_t bufferLength, int flags,
|
ssize_t recvfrom(int socket, void *buffer, size_t bufferLength, int flags,
|
||||||
@@ -142,7 +161,8 @@ ssize_t send(int socket, const void *buffer, size_t length, int flags);
|
|||||||
ssize_t sendmsg(int socket, const struct msghdr *message, int flags);
|
ssize_t sendmsg(int socket, const struct msghdr *message, int flags);
|
||||||
ssize_t sendto(int socket, const void *message, size_t length, int flags,
|
ssize_t sendto(int socket, const void *message, size_t length, int flags,
|
||||||
const struct sockaddr *address, socklen_t addressLength);
|
const struct sockaddr *address, socklen_t addressLength);
|
||||||
int setsockopt(int socket, int level, int option, const void *value, socklen_t length);
|
int setsockopt(int socket, int level, int option, const void *value,
|
||||||
|
socklen_t length);
|
||||||
int shutdown(int socket, int how);
|
int shutdown(int socket, int how);
|
||||||
int socket(int domain, int type, int protocol);
|
int socket(int domain, int type, int protocol);
|
||||||
int sockatmark(int socket);
|
int sockatmark(int socket);
|
||||||
|
|||||||
Reference in New Issue
Block a user