diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | session.c | 4 | ||||
-rw-r--r-- | sshlogin.c | 6 | ||||
-rw-r--r-- | sshlogin.h | 2 |
4 files changed, 12 insertions, 7 deletions
@@ -1,3 +1,8 @@ | |||
1 | 20030101 | ||
2 | - (stevesk) [session.c sshlogin.c sshlogin.h] complete portable | ||
3 | parts of pass addrlen with sockaddr * fix. | ||
4 | from Hajimu UMEMOTO <ume@FreeBSD.org> | ||
5 | |||
1 | 20021222 | 6 | 20021222 |
2 | - (bal) OpenBSD CVS Sync | 7 | - (bal) OpenBSD CVS Sync |
3 | - fgsch@cvs.openbsd.org 2002/11/15 10:03:09 | 8 | - fgsch@cvs.openbsd.org 2002/11/15 10:03:09 |
@@ -912,4 +917,4 @@ | |||
912 | save auth method before monitor_reset_key_state(); bugzilla bug #284; | 917 | save auth method before monitor_reset_key_state(); bugzilla bug #284; |
913 | ok provos@ | 918 | ok provos@ |
914 | 919 | ||
915 | $Id: ChangeLog,v 1.2536 2002/12/23 02:58:17 mouring Exp $ | 920 | $Id: ChangeLog,v 1.2537 2003/01/01 23:43:55 stevesk Exp $ |
@@ -689,7 +689,7 @@ do_pre_login(Session *s) | |||
689 | 689 | ||
690 | record_utmp_only(pid, s->tty, s->pw->pw_name, | 690 | record_utmp_only(pid, s->tty, s->pw->pw_name, |
691 | get_remote_name_or_ip(utmp_len, options.verify_reverse_mapping), | 691 | get_remote_name_or_ip(utmp_len, options.verify_reverse_mapping), |
692 | (struct sockaddr *)&from); | 692 | (struct sockaddr *)&from, fromlen); |
693 | } | 693 | } |
694 | #endif | 694 | #endif |
695 | 695 | ||
@@ -730,8 +730,8 @@ do_login(Session *s, const char *command) | |||
730 | * the address be 0.0.0.0. | 730 | * the address be 0.0.0.0. |
731 | */ | 731 | */ |
732 | memset(&from, 0, sizeof(from)); | 732 | memset(&from, 0, sizeof(from)); |
733 | fromlen = sizeof(from); | ||
733 | if (packet_connection_is_on_socket()) { | 734 | if (packet_connection_is_on_socket()) { |
734 | fromlen = sizeof(from); | ||
735 | if (getpeername(packet_get_connection_in(), | 735 | if (getpeername(packet_get_connection_in(), |
736 | (struct sockaddr *) & from, &fromlen) < 0) { | 736 | (struct sockaddr *) & from, &fromlen) < 0) { |
737 | debug("getpeername: %.100s", strerror(errno)); | 737 | debug("getpeername: %.100s", strerror(errno)); |
diff --git a/sshlogin.c b/sshlogin.c index 4cd1c0059..12555d635 100644 --- a/sshlogin.c +++ b/sshlogin.c | |||
@@ -70,7 +70,7 @@ record_login(pid_t pid, const char *ttyname, const char *user, uid_t uid, | |||
70 | struct logininfo *li; | 70 | struct logininfo *li; |
71 | 71 | ||
72 | li = login_alloc_entry(pid, user, host, ttyname); | 72 | li = login_alloc_entry(pid, user, host, ttyname); |
73 | login_set_addr(li, addr, sizeof(struct sockaddr)); | 73 | login_set_addr(li, addr, addrlen); |
74 | login_login(li); | 74 | login_login(li); |
75 | login_free_entry(li); | 75 | login_free_entry(li); |
76 | } | 76 | } |
@@ -78,12 +78,12 @@ record_login(pid_t pid, const char *ttyname, const char *user, uid_t uid, | |||
78 | #ifdef LOGIN_NEEDS_UTMPX | 78 | #ifdef LOGIN_NEEDS_UTMPX |
79 | void | 79 | void |
80 | record_utmp_only(pid_t pid, const char *ttyname, const char *user, | 80 | record_utmp_only(pid_t pid, const char *ttyname, const char *user, |
81 | const char *host, struct sockaddr * addr) | 81 | const char *host, struct sockaddr * addr, socklen_t addrlen) |
82 | { | 82 | { |
83 | struct logininfo *li; | 83 | struct logininfo *li; |
84 | 84 | ||
85 | li = login_alloc_entry(pid, user, host, ttyname); | 85 | li = login_alloc_entry(pid, user, host, ttyname); |
86 | login_set_addr(li, addr, sizeof(struct sockaddr)); | 86 | login_set_addr(li, addr, addrlen); |
87 | login_utmp_only(li); | 87 | login_utmp_only(li); |
88 | login_free_entry(li); | 88 | login_free_entry(li); |
89 | } | 89 | } |
diff --git a/sshlogin.h b/sshlogin.h index 287c0d9f6..1c8bfad32 100644 --- a/sshlogin.h +++ b/sshlogin.h | |||
@@ -22,7 +22,7 @@ u_long get_last_login_time(uid_t, const char *, char *, u_int); | |||
22 | 22 | ||
23 | #ifdef LOGIN_NEEDS_UTMPX | 23 | #ifdef LOGIN_NEEDS_UTMPX |
24 | void record_utmp_only(pid_t, const char *, const char *, const char *, | 24 | void record_utmp_only(pid_t, const char *, const char *, const char *, |
25 | struct sockaddr *); | 25 | struct sockaddr *, socklen_t); |
26 | #endif | 26 | #endif |
27 | 27 | ||
28 | #endif | 28 | #endif |