diff --git a/ChangeLog b/ChangeLog
index 2d94e3ac724a8eadb8f97f59fc3d8f082f6563e0..6e709e0eff3f3c2706d6a84690e2dd80544f6aa9 100755
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,10 @@
 2005-11-21  Kevin P. Fleming  <kpfleming@digium.com>
 
-	* channels/chan_sip.c: ensure that case changes made to peer/user names are not ignored during reload operations
-	* channels/chan_iax2.c: ensure that case changes made to peer/user names are not ignored during reload operations
+	* channels/chan_sip.c (build_peer): ensure that case changes made to peer names are not ignored during reload operations
+	(build_peer): when a peer is changed from dynamic to static mode, reset the default port number if no other has been specified
+
+	* channels/chan_iax2.c (build_peer and build_user): ensure that case changes made to peer/user names are not ignored during reload operations
+	(build_peer): when a peer is changed from dynamic to static mode, reset the default port number if no other has been specified
 
 2005-11-21  Josh Roberson <josh@asteriasgi.com>
 
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index fa95b91857737e63b1899cc2d8b239ccc51b67ab..74b5da3f90ecf5b37db87654847b96b98e37d43c 100755
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -8200,6 +8200,8 @@ static struct iax2_peer *build_peer(const char *name, struct ast_variable *v, in
 						free(peer);
 						return NULL;
 					}
+					if (!peer->addr.sin_port)
+						peer->addr.sin_port = htons(IAX_DEFAULT_PORTNO);
 				}
 				if (!maskfound)
 					inet_aton("255.255.255.255", &peer->mask);
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index e6faa6b4ea70f6c149e685527a7d6ee233613f39..0daf12f89d010779aceec11a0b770a4943561135 100755
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -12100,8 +12100,11 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, int
 				}
 				if (!strcasecmp(v->name, "outboundproxy"))
 					obproxyfound=1;
-				else
+				else {
 					ast_copy_string(peer->tohost, v->value, sizeof(peer->tohost));
+					if (!peer->addr.sin_port)
+						peer->addr.sin_port = htons(DEFAULT_SIP_PORT);
+				}
 			}
 		} else if (!strcasecmp(v->name, "defaultip")) {
 			if (ast_get_ip(&peer->defaddr, v->value)) {