summaryrefslogtreecommitdiffstats
path: root/mbbsd/talk.c
diff options
context:
space:
mode:
Diffstat (limited to 'mbbsd/talk.c')
-rw-r--r--mbbsd/talk.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/mbbsd/talk.c b/mbbsd/talk.c
index e96ed86e..1233f74b 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();