diff options
Diffstat (limited to 'mbbsd/talk.c')
-rw-r--r-- | mbbsd/talk.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/mbbsd/talk.c b/mbbsd/talk.c index eb51d4f4..5d69f85e 100644 --- a/mbbsd/talk.c +++ b/mbbsd/talk.c @@ -1259,7 +1259,11 @@ int make_connection_to_somebody(userinfo_t *uin, int timeout){ return -1; } length = sizeof(server); +#if defined(Solaris) && __OS_MAJOR_VERSION__ == 5 && __OS_MINOR_VERSION__ < 7 + if (getsockname(sock, (struct sockaddr *) & server, & length) < 0) { +#else if (getsockname(sock, (struct sockaddr *) & server, (socklen_t *) & length) < 0) { +#endif close(sock); perror("sock name err"); unlockutmpmode(); @@ -1426,7 +1430,11 @@ my_talk(userinfo_t * uin, int fri_stat, char defact) sock = make_connection_to_somebody(uin, 5); +#if defined(Solaris) && __OS_MAJOR_VERSION__ == 5 && __OS_MINOR_VERSION__ < 7 + msgsock = accept(sock, (struct sockaddr *) 0, 0); +#else msgsock = accept(sock, (struct sockaddr *) 0, (socklen_t *) 0); +#endif if (msgsock == -1) { perror("accept"); unlockutmpmode(); |