mirror of
https://github.com/solemnwarning/ipxwrapper
synced 2024-12-30 16:45:37 +01:00
Implemented getpeername function.
This commit is contained in:
parent
3924db36b8
commit
412a4c3932
@ -17,3 +17,4 @@ EXPORTS
|
|||||||
WSHEnumProtocols
|
WSHEnumProtocols
|
||||||
connect
|
connect
|
||||||
send
|
send
|
||||||
|
getpeername
|
||||||
|
@ -131,5 +131,6 @@ SOCKET WSAAPI r_socket(int,int,int);
|
|||||||
int PASCAL r_ioctlsocket(SOCKET fd, long cmd, u_long *argp);
|
int PASCAL r_ioctlsocket(SOCKET fd, long cmd, u_long *argp);
|
||||||
int PASCAL r_connect(SOCKET fd, const struct sockaddr *addr, int addrlen);
|
int PASCAL r_connect(SOCKET fd, const struct sockaddr *addr, int addrlen);
|
||||||
int PASCAL r_send(SOCKET fd, const char *buf, int len, int flags);
|
int PASCAL r_send(SOCKET fd, const char *buf, int len, int flags);
|
||||||
|
int PASCAL r_getpeername(SOCKET fd, struct sockaddr *addr, int *addrlen);
|
||||||
|
|
||||||
#endif /* !IPXWRAPPER_H */
|
#endif /* !IPXWRAPPER_H */
|
||||||
|
@ -33,3 +33,4 @@ r_socket:4
|
|||||||
r_ioctlsocket:4
|
r_ioctlsocket:4
|
||||||
r_connect:4
|
r_connect:4
|
||||||
r_send:4
|
r_send:4
|
||||||
|
r_getpeername:4
|
||||||
|
@ -817,3 +817,24 @@ int PASCAL send(SOCKET fd, const char *buf, int len, int flags) {
|
|||||||
return r_send(fd, buf, len, flags);
|
return r_send(fd, buf, len, flags);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int PASCAL getpeername(SOCKET fd, struct sockaddr *addr, int *addrlen) {
|
||||||
|
ipx_socket *sockptr = get_socket(fd);
|
||||||
|
|
||||||
|
if(sockptr) {
|
||||||
|
if(!(sockptr->flags & IPX_CONNECTED)) {
|
||||||
|
RETURN_WSA(WSAENOTCONN, -1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(*addrlen < sizeof(struct sockaddr_ipx)) {
|
||||||
|
RETURN_WSA(WSAEFAULT, -1);
|
||||||
|
}
|
||||||
|
|
||||||
|
memcpy(addr, &(sockptr->remote_addr), sizeof(struct sockaddr_ipx));
|
||||||
|
*addrlen = sizeof(struct sockaddr_ipx);
|
||||||
|
|
||||||
|
RETURN(0);
|
||||||
|
}else{
|
||||||
|
return r_getpeername(fd, addr, addrlen);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -2,7 +2,7 @@ accept
|
|||||||
bind:0
|
bind:0
|
||||||
closesocket:0
|
closesocket:0
|
||||||
connect:0
|
connect:0
|
||||||
getpeername
|
getpeername:0
|
||||||
getsockname:0
|
getsockname:0
|
||||||
getsockopt:0
|
getsockopt:0
|
||||||
htonl
|
htonl
|
||||||
|
Loading…
x
Reference in New Issue
Block a user