Xenomai API  2.6.5
rtipc.h
Go to the documentation of this file.
1 
65 #ifdef DOXYGEN_CPP
66 int socket__AF_RTIPC(int domain =AF_RTIPC, int type =SOCK_DGRAM, int protocol);
67 #endif
68 
83 #ifdef DOXYGEN_CPP
84 int close__AF_RTIPC(int sockfd);
85 #endif
86 
171 #ifdef DOXYGEN_CPP
172 int bind__AF_RTIPC(int sockfd, const struct sockaddr_ipc *addr,
173  socklen_t addrlen);
174 #endif
175 
204 #ifdef DOXYGEN_CPP
205 int connect__AF_RTIPC(int sockfd, const struct sockaddr_ipc *addr,
206  socklen_t addrlen);
207 #endif
208 
229 #ifdef DOXYGEN_CPP
230 int setsockopt__AF_RTIPC(int sockfd, int level, int optname,
231  const void *optval, socklen_t optlen);
232 #endif
233 
253 #ifdef DOXYGEN_CPP
254 int getsockopt__AF_RTIPC(int sockfd, int level, int optname,
255  void *optval, socklen_t *optlen);
256 #endif
257 
293 #ifdef DOXYGEN_CPP
294 ssize_t sendmsg__AF_RTIPC(int sockfd, const struct user_msghdr *msg, int flags);
295 #endif
296 
323 #ifdef DOXYGEN_CPP
324 ssize_t recvmsg__AF_RTIPC(int sockfd, struct user_msghdr *msg, int flags);
325 #endif
326 
340 #ifdef DOXYGEN_CPP
341 int getsockname__AF_RTIPC(int sockfd, struct sockaddr_ipc *addr, socklen_t *addrlen);
342 #endif
343 
361 #ifdef DOXYGEN_CPP
362 int getpeername__AF_RTIPC(int sockfd, struct sockaddr_ipc *addr, socklen_t *addrlen);
363 #endif
364 
367 #ifndef _RTIPC_H
368 
369 #ifdef __KERNEL__
370 #include <linux/net.h>
371 #include <linux/socket.h>
372 #include <linux/if.h>
373 #else /* !__KERNEL__ */
374 #include <sys/types.h>
375 #include <sys/socket.h>
376 #endif /* !__KERNEL__ */
377 #include <nucleus/types.h>
378 #include <rtdm/rtdm.h>
379 
380 /* Address family */
381 #define AF_RTIPC 111
382 
383 /* Protocol family */
384 #define PF_RTIPC AF_RTIPC
385 
391 enum {
440  IPCPROTO_MAX
441 };
447 typedef int16_t rtipc_port_t;
448 
454  char label[XNOBJECT_NAME_LEN];
455 };
456 
460 struct sockaddr_ipc {
462  sa_family_t sipc_family;
465 };
466 
467 #define SOL_XDDP 311
468 
503 #define XDDP_LABEL 1
504 
537 #define XDDP_POOLSZ 2
538 
591 #define XDDP_BUFSZ 3
592 
630 #define XDDP_MONITOR 4
631 
647 #define XDDP_EVTIN 1
648 
655 #define XDDP_EVTOUT 2
656 
662 #define XDDP_EVTDOWN 3
663 
675 #define XDDP_EVTNOBUF 4
676 
678 #define SOL_IDDP 312
679 
713 #define IDDP_LABEL 1
714 
747 #define IDDP_POOLSZ 2
748 
750 #define SOL_BUFP 313
751 
785 #define BUFP_LABEL 1
786 
816 #define BUFP_BUFSZ 2
817 
831 #ifdef DOXYGEN_CPP
832 #define SO_SNDTIMEO defined_by_kernel_header_file
833 #endif
834 
842 #ifdef DOXYGEN_CPP
843 #define SO_RCVTIMEO defined_by_kernel_header_file
844 #endif
845 
861 #endif /* !_RTIPC_H */
int getpeername__AF_RTIPC(int sockfd, struct sockaddr_ipc *addr, socklen_t *addrlen)
Get socket peer.
Socket address structure for the RTIPC address family.
Definition: rtipc.h:460
rtipc_port_t sipc_port
Port number.
Definition: rtipc.h:464
Intra-domain datagram protocol (RT <-> RT).
Definition: rtipc.h:426
Default protocol (IDDP)
Definition: rtipc.h:393
int bind__AF_RTIPC(int sockfd, const struct sockaddr_ipc *addr, socklen_t addrlen)
Bind a RTIPC socket to a port.
int socket__AF_RTIPC(int domain=AF_RTIPC, int type=SOCK_DGRAM, int protocol)
Create an endpoint for communication in the AF_RTIPC domain.
int16_t rtipc_port_t
Port number type for the RTIPC address family.
Definition: rtipc.h:447
char label[XNOBJECT_NAME_LEN]
Port label string, null-terminated.
Definition: rtipc.h:454
int setsockopt__AF_RTIPC(int sockfd, int level, int optname, const void *optval, socklen_t optlen)
Set options on RTIPC sockets.
ssize_t sendmsg__AF_RTIPC(int sockfd, const struct user_msghdr *msg, int flags)
Send a message on a RTIPC socket.
int close__AF_RTIPC(int sockfd)
Close a RTIPC socket descriptor.
Buffer protocol (RT <-> RT, byte-oriented).
Definition: rtipc.h:439
Port label information structure.
Definition: rtipc.h:452
int getsockopt__AF_RTIPC(int sockfd, int level, int optname, void *optval, socklen_t *optlen)
Get options on RTIPC sockets.
Cross-domain datagram protocol (RT <-> non-RT).
Definition: rtipc.h:419
int connect__AF_RTIPC(int sockfd, const struct sockaddr_ipc *addr, socklen_t addrlen)
Initiate a connection on a RTIPC socket.
sa_family_t sipc_family
RTIPC address family, must be AF_RTIPC.
Definition: rtipc.h:462
ssize_t recvmsg__AF_RTIPC(int sockfd, struct user_msghdr *msg, int flags)
Receive a message from a RTIPC socket.
int getsockname__AF_RTIPC(int sockfd, struct sockaddr_ipc *addr, socklen_t *addrlen)
Get socket name.
Real-Time Driver Model for Xenomai, user API header.