diff --git a/acl.c b/acl.c
index f698ec3ace90eafc5624dae961b3756d28b34297..2542c7a75ea5f68a307d38ae90a8e32f404ccb53 100755
--- a/acl.c
+++ b/acl.c
@@ -150,12 +150,6 @@ int ast_get_ip(struct sockaddr_in *sin, char *value)
 	return 0;
 }
 
-int inaddrcmp(struct sockaddr_in *sin1, struct sockaddr_in *sin2)
-{
-	return ((sin1->sin_addr.s_addr != sin2->sin_addr.s_addr )
-			|| (sin1->sin_port != sin2->sin_port));
-}
-
 /* iface is the interface (e.g. eth0); address is the return value */
 int ast_lookup_iface(char *iface, struct in_addr *address) {
 	int mysock, res = 0;
diff --git a/include/asterisk/acl.h b/include/asterisk/acl.h
index 0256381384c74f3c778e2c06e3c434a0e965a060..bb2cc2e3d10e8be151ca5654e0260e331004d564 100755
--- a/include/asterisk/acl.h
+++ b/include/asterisk/acl.h
@@ -28,10 +28,16 @@ extern void ast_free_ha(struct ast_ha *ha);
 extern struct ast_ha *ast_append_ha(char *sense, char *stuff, struct ast_ha *path);
 extern int ast_apply_ha(struct ast_ha *ha, struct sockaddr_in *sin);
 extern int ast_get_ip(struct sockaddr_in *sin, char *value);
-extern int inaddrcmp(struct sockaddr_in *sin1, struct sockaddr_in *sin2);
 extern int ast_ouraddrfor(struct in_addr *them, struct in_addr *us);
 extern int ast_lookup_iface(char *iface, struct in_addr *address);
 
+//! Compares the source address and port of two sockaddr_in
+static inline int inaddrcmp(struct sockaddr_in *sin1, struct sockaddr_in *sin2)
+{
+	return ((sin1->sin_addr.s_addr != sin2->sin_addr.s_addr ) 
+		|| (sin1->sin_port != sin2->sin_port));
+}
+
 #if defined(__cplusplus) || defined(c_plusplus)
 }
 #endif