- (djm) [serverloop.c] Fix test for server-assigned remote forwarding port
   (-R 0:...); bz#1578, spotted and fix by gavin AT emf.net; ok dtucker@
diff --git a/ChangeLog b/ChangeLog
index b692efa..dcb471b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+20090908
+ - (djm) [serverloop.c] Fix test for server-assigned remote forwarding port
+   (-R 0:...); bz#1578, spotted and fix by gavin AT emf.net; ok dtucker@
+
 20090901
  - (dtucker) [configure.ac] Bug #1639: use AC_PATH_PROG to search the path for
    krb5-config if it's not in the location specified by --with-kerberos5.
diff --git a/serverloop.c b/serverloop.c
index d8cb54b..8be01c5 100644
--- a/serverloop.c
+++ b/serverloop.c
@@ -1124,7 +1124,8 @@
 		    no_port_forwarding_flag ||
 		    (!want_reply && listen_port == 0)
 #ifndef NO_IPPORT_RESERVED_CONCEPT
-		    || (listen_port < IPPORT_RESERVED && pw->pw_uid != 0)
+		    || (listen_port != 0 && listen_port < IPPORT_RESERVED &&
+                    pw->pw_uid != 0)
 #endif
 		    ) {
 			success = 0;