#include <sys/types.h>
|
int
bindresvport (int sd, struct sockaddr_in *sin); |
If sin is a pointer to a
struct sockaddr_in
then the appropriate fields in the structure should be defined.
Note that
sin->sin_family
must be initialized to the address family of the socket, passed by
sd.
If
sin->sin_port
is
'0'
then an anonymous port (in the range 600-1023) will be
chosen, and if
bind
is successful, the
sin->sin_port
will be updated to contain the allocated port.
If sin is the NULL pointer, an anonymous port will be allocated (as above). However, there is no way for bindresvport to return the allocated port in this case. Function prototype of bindresvport is biased to AF_INET socket. |
#include <sys/socket.h> #include <netinet/in.h> #include <unistd.h> void BindResvPort() { int sockfd; sockaddr_in selfAddr; sockfd = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); selfAddr.sin_family = AF_INET; selfAddr.sin_addr.s_addr = INADDR_ANY; selfAddr.sin_port = htons(100); bindresvport(sockfd, &selfAddr); close(sockfd); }
[EPFNOSUPPORT] | |
If second argument was supplied, and address family did not match between arguments. | |
The bindresvport function may also fail and set errno for any of the errors specified for the calls bind, getsockopt, or setsockopt.
© 2008 Nokia Corporation. All rights reserved. This documentation can be used in the connection with this Product to help and support the user. |