diff options
author | ajs <ajs> | 2005-01-30 17:40:29 +0000 |
---|---|---|
committer | ajs <ajs> | 2005-01-30 17:40:29 +0000 |
commit | 02f87b3c12d3f16703b12e7b4663fdd966d8c758 (patch) | |
tree | 83d9a7c85dbc941b00cfcdddb9a03ff15d86d082 | |
parent | afd6bda9453a0997dbb1b84bbf869f826df7dc57 (diff) | |
download | quagga-02f87b3c12d3f16703b12e7b4663fdd966d8c758.tar.bz2 quagga-02f87b3c12d3f16703b12e7b4663fdd966d8c758.tar.xz |
2005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
* ripd.c: (rip_create_socket) Save errno before calling
ripd_privs.change.
-rw-r--r-- | ripd/ChangeLog | 5 | ||||
-rw-r--r-- | ripd/ripd.c | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/ripd/ChangeLog b/ripd/ChangeLog index 13722805..5a5d1b4b 100644 --- a/ripd/ChangeLog +++ b/ripd/ChangeLog @@ -1,3 +1,8 @@ +2005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu> + + * ripd.c: (rip_create_socket) Save errno before calling + ripd_privs.change. + 2005-01-04 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ripd.c: (rip_recvmsg) Use ZCMSG_FIRSTHDR instead of CMSG_FIRSTHDR. diff --git a/ripd/ripd.c b/ripd/ripd.c index c5baf8a3..2a345a66 100644 --- a/ripd/ripd.c +++ b/ripd/ripd.c @@ -2002,9 +2002,11 @@ rip_create_socket () ret = bind (sock, (struct sockaddr *) & addr, sizeof (addr)); if (ret < 0) { - perror ("bind"); + int save_errno = errno; if (ripd_privs.change (ZPRIVS_LOWER)) zlog_err ("rip_create_socket: could not lower privs"); + zlog_err("cannot bind to port %d: %s", + (int)ntohs(addr.sin_port), safe_strerror(save_errno)); return ret; } if (ripd_privs.change (ZPRIVS_LOWER)) |