瀏覽代碼

ipops: Minor documentation changes

Use the IPv6 documentation address in examples if possible - 2001:DB8::/32
Olle E. Johansson 12 年之前
父節點
當前提交
d02070dbef
共有 2 個文件被更改,包括 57 次插入46 次删除
  1. 40 37
      modules/ipops/README
  2. 17 9
      modules/ipops/doc/ipops_admin.xml

+ 40 - 37
modules/ipops/README

@@ -76,20 +76,23 @@ Chapter 1. Admin Guide
 
 
 1. Overview
 1. Overview
 
 
-   This module offers operations for IPv4 and IPv6.
-
-   IPv6 is defined in RFC 2460. The same IPv6 can be represented by
-   different ASCII strings, so binary comparison is required. For example,
-   the following IPv6 are equivalent:
-     * 1080:0000:0000:0000:0008:0800:200C:417A
-     * 1080:0:0:0:8:800:200C:417A
-     * 1080::8:800:200C:417A
-
-   When using IPv6 in an URI (i.e. a SIP URI) such IP must be written in
-   "IPv6 reference" format (which is the textual representation of the
-   IPv6 enclosed between [ ] symbols). An example is
-   "sip:alice@[1080:0:0:0:8:800:200C:417A]". This module also allows
-   comparing a IPv6 with its IPv6 reference representation.
+   This module offers operations for handling IP addresses in both IPv4
+   and IPv6.
+
+   IPv6 is defined in RFC 2460. The same IPv6 address can be represented
+   by different ASCII strings, so binary comparison is required. For
+   example, the following IPv6 addresses are equivalent:
+     * 2001:DB8:0000:0000:0008:0800:200C:417A
+     * 2001:DB8:0:0:8:800:200C:417A
+     * 2001:DB8::200C:417A
+
+   When using IPv6 in an URI (i.e. a SIP URI) the IP address must be
+   written in "IPv6 reference" format (which is the textual representation
+   of the IPv6 enclosed between [ ] symbols). An example is
+   "sip:alice@[2001:DB8:0:0:8:800:200C:417A]". This allows separation of
+   address and port number with a :, like
+   "[2001:DB8:0:0:8:800:200C:417A]:5060". This module also allows
+   comparing an IPv6 address with its IPv6 reference representation.
 
 
 2. Dependencies
 2. Dependencies
 
 
@@ -122,7 +125,7 @@ Chapter 1. Admin Guide
    4.9. is_ip_rfc1918 (ip)
    4.9. is_ip_rfc1918 (ip)
    4.10. is_in_subnet (ip, subnet)
    4.10. is_in_subnet (ip, subnet)
 
 
-4.1. is_ip (ip)
+4.1.  is_ip (ip)
 
 
    Returns TRUE if the argument is a valid IPv4, IPv6 or IPv6 reference.
    Returns TRUE if the argument is a valid IPv4, IPv6 or IPv6 reference.
    FALSE otherwise.
    FALSE otherwise.
@@ -133,14 +136,14 @@ Chapter 1. Admin Guide
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.1. is_ip usage
+   Example 1.1.  is_ip usage
 ...
 ...
 if (is_ip($rd)) {
 if (is_ip($rd)) {
-  xlog("L_INFO", "RURI domain is IP\n");
+  xlog("L_INFO", "RURI domain is an IP address (not a host name/domain)\n");
 }
 }
 ...
 ...
 
 
-4.2. is_pure_ip (ip)
+4.2.  is_pure_ip (ip)
 
 
    Returns TRUE if the argument is a valid IPv4 or IPv6. FALSE otherwise.
    Returns TRUE if the argument is a valid IPv4 or IPv6. FALSE otherwise.
 
 
@@ -150,7 +153,7 @@ if (is_ip($rd)) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.2. is_pure_ip usage
+   Example 1.2.  is_pure_ip usage
 ...
 ...
 $var(ip) = "::1";
 $var(ip) = "::1";
 if (is_pure_ip($var(ip))) {
 if (is_pure_ip($var(ip))) {
@@ -158,7 +161,7 @@ if (is_pure_ip($var(ip))) {
 }
 }
 ...
 ...
 
 
-4.3. is_ipv4 (ip)
+4.3.  is_ipv4 (ip)
 
 
    Returns TRUE if the argument is a valid IPv4. FALSE otherwise.
    Returns TRUE if the argument is a valid IPv4. FALSE otherwise.
 
 
@@ -168,14 +171,14 @@ if (is_pure_ip($var(ip))) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.3. is_ipv4 usage
+   Example 1.3.  is_ipv4 usage
 ...
 ...
 if (is_ipv4("1.2.3.4")) {
 if (is_ipv4("1.2.3.4")) {
   xlog("L_INFO", "it's IPv4\n");
   xlog("L_INFO", "it's IPv4\n");
 }
 }
 ...
 ...
 
 
-4.4. is_ipv6 (ip)
+4.4.  is_ipv6 (ip)
 
 
    Returns TRUE if the argument is a valid IPv6. FALSE otherwise.
    Returns TRUE if the argument is a valid IPv6. FALSE otherwise.
 
 
@@ -185,14 +188,14 @@ if (is_ipv4("1.2.3.4")) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.4. is_ipv6 usage
+   Example 1.4.  is_ipv6 usage
 ...
 ...
 if (is_ipv6("1080:0:0:0:8:800:200C:417A")) {
 if (is_ipv6("1080:0:0:0:8:800:200C:417A")) {
   xlog("L_INFO", "it's IPv6\n");
   xlog("L_INFO", "it's IPv6\n");
 }
 }
 ...
 ...
 
 
-4.5. is_ipv6_reference (ip)
+4.5.  is_ipv6_reference (ip)
 
 
    Returns TRUE if the argument is a valid IPv6 reference. FALSE
    Returns TRUE if the argument is a valid IPv6 reference. FALSE
    otherwise.
    otherwise.
@@ -203,14 +206,14 @@ if (is_ipv6("1080:0:0:0:8:800:200C:417A")) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.5. is_ipv6_reference usage
+   Example 1.5.  is_ipv6_reference usage
 ...
 ...
 if (is_ipv6_reference("[1080:0:0:0:8:800:200C:417A]")) {
 if (is_ipv6_reference("[1080:0:0:0:8:800:200C:417A]")) {
   xlog("L_INFO", "it's IPv6 reference\n");
   xlog("L_INFO", "it's IPv6 reference\n");
 }
 }
 ...
 ...
 
 
-4.6. ip_type (ip)
+4.6.  ip_type (ip)
 
 
    Returns the type of the given IP.
    Returns the type of the given IP.
 
 
@@ -226,7 +229,7 @@ if (is_ipv6_reference("[1080:0:0:0:8:800:200C:417A]")) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.6. ip_type usage
+   Example 1.6.  ip_type usage
 ...
 ...
 ip_type($var(myip));
 ip_type($var(myip));
 switch($rc) {
 switch($rc) {
@@ -245,10 +248,10 @@ switch($rc) {
 }
 }
 ...
 ...
 
 
-4.7. compare_ips (ip1, ip2)
+4.7.  compare_ips (ip1, ip2)
 
 
-   Returns TRUE if both IP's are the same. FALSE otherwise. This function
-   also allows comparing an IPv6 against an IPv6 reference.
+   Returns TRUE if both IP addresses are the same. FALSE otherwise. This
+   function also allows comparing an IPv6 against an IPv6 reference.
 
 
    Parameters:
    Parameters:
      * ip1 - String or pseudo-variable containing the first IP to compare.
      * ip1 - String or pseudo-variable containing the first IP to compare.
@@ -258,7 +261,7 @@ switch($rc) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.7. compare_ips usage
+   Example 1.7.  compare_ips usage
 ...
 ...
 if (compare_ips("1080:0000:0000:0000:0008:0800:200C:417A", "[1080::8:800:200C:41
 if (compare_ips("1080:0000:0000:0000:0008:0800:200C:417A", "[1080::8:800:200C:41
 7A]")) {
 7A]")) {
@@ -266,7 +269,7 @@ if (compare_ips("1080:0000:0000:0000:0008:0800:200C:417A", "[1080::8:800:200C:41
 }
 }
 ...
 ...
 
 
-4.8. compare_pure_ips (ip1, ip2)
+4.8.  compare_pure_ips (ip1, ip2)
 
 
    Returns TRUE if both IP's are the same. FALSE otherwise. This function
    Returns TRUE if both IP's are the same. FALSE otherwise. This function
    does NOT allow comparing an IPv6 against an IPv6 reference.
    does NOT allow comparing an IPv6 against an IPv6 reference.
@@ -279,14 +282,14 @@ if (compare_ips("1080:0000:0000:0000:0008:0800:200C:417A", "[1080::8:800:200C:41
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.8. compare_pure_ips usage
+   Example 1.8.  compare_pure_ips usage
 ...
 ...
 if (compare_pure_ips($si, "1080::8:800:200C:417A")) {
 if (compare_pure_ips($si, "1080::8:800:200C:417A")) {
   xlog("L_INFO", "both are the same IP\n");
   xlog("L_INFO", "both are the same IP\n");
 }
 }
 ...
 ...
 
 
-4.9. is_ip_rfc1918 (ip)
+4.9.  is_ip_rfc1918 (ip)
 
 
    Returns TRUE if the argument is a private IPv4 according to RFC 1918.
    Returns TRUE if the argument is a private IPv4 according to RFC 1918.
    FALSE otherwise.
    FALSE otherwise.
@@ -297,14 +300,14 @@ if (compare_pure_ips($si, "1080::8:800:200C:417A")) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.9. is_ip_rfc1918 usage
+   Example 1.9.  is_ip_rfc1918 usage
 ...
 ...
 if (is_ip_rfc1918("10.0.123.123")) {
 if (is_ip_rfc1918("10.0.123.123")) {
   xlog("L_INFO", "it's a private IPv4\n");
   xlog("L_INFO", "it's a private IPv4\n");
 }
 }
 ...
 ...
 
 
-4.10. is_in_subnet (ip, subnet)
+4.10.  is_in_subnet (ip, subnet)
 
 
    Returns TRUE if the first argument is an IP address within the (CIDR
    Returns TRUE if the first argument is an IP address within the (CIDR
    notation) subnet in the second argument. FALSE otherwise.
    notation) subnet in the second argument. FALSE otherwise.
@@ -317,7 +320,7 @@ if (is_ip_rfc1918("10.0.123.123")) {
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
    ONREPLY_ROUTE, BRANCH_ROUTE and LOCAL_ROUTE.
 
 
-   Example 1.10. is_in_subnet usage
+   Example 1.10.  is_in_subnet usage
 ...
 ...
 if (is_in_subnet("10.0.123.123", "10.0.123.1/24")) {
 if (is_in_subnet("10.0.123.123", "10.0.123.1/24")) {
   xlog("L_INFO", "it's in the subnet\n");
   xlog("L_INFO", "it's in the subnet\n");

+ 17 - 9
modules/ipops/doc/ipops_admin.xml

@@ -19,27 +19,33 @@
     <title>Overview</title>
     <title>Overview</title>
          
          
     <para>
     <para>
-      This module offers operations for IPv4 and IPv6.
+      This module offers operations for handling IP addresses in both IPv4 and IPv6.
     </para>
     </para>
 
 
     <para>
     <para>
-      IPv6 is defined in <ulink url="http://tools.ietf.org/html/rfc2460">RFC 2460</ulink>. The same IPv6 can be represented by different ASCII strings, so binary comparison is required. For example, the following IPv6 are equivalent:
+      IPv6 is defined in <ulink url="http://tools.ietf.org/html/rfc2460">RFC 2460</ulink>.
+	The same IPv6 address can be represented by different ASCII strings, so binary comparison is required.
+	For example, the following IPv6 addresses are equivalent:
     </para>
     </para>
 
 
     <itemizedlist>
     <itemizedlist>
       <listitem>
       <listitem>
-        <para>1080:0000:0000:0000:0008:0800:200C:417A</para>
+        <para>2001:DB8:0000:0000:0008:0800:200C:417A</para>
       </listitem>
       </listitem>
       <listitem>
       <listitem>
-        <para>1080:0:0:0:8:800:200C:417A</para>
+        <para>2001:DB8:0:0:8:800:200C:417A</para>
       </listitem>
       </listitem>
       <listitem>
       <listitem>
-        <para>1080::8:800:200C:417A</para>
+        <para>2001:DB8::200C:417A</para>
       </listitem>
       </listitem>
     </itemizedlist>
     </itemizedlist>
 
 
     <para>
     <para>
-      When using IPv6 in an URI (i.e. a SIP URI) such IP must be written in "IPv6 reference" format (which is the textual representation of the IPv6 enclosed between [ ] symbols). An example is <quote>sip:alice@[1080:0:0:0:8:800:200C:417A]</quote>. This module also allows comparing a IPv6 with its IPv6 reference representation.
+      	When using IPv6 in an URI (i.e. a SIP URI) the IP address must be written in "IPv6 reference" format 
+	(which is the textual representation of the IPv6 enclosed between [ ] symbols).
+	An example is <quote>sip:alice@[2001:DB8:0:0:8:800:200C:417A]</quote>. This allows separation of
+	address and port number with a :, like <quote>[2001:DB8:0:0:8:800:200C:417A]:5060</quote>.
+	This module also allows comparing an IPv6 address with its IPv6 reference representation.
     </para>
     </para>
            
            
   </section>
   </section>
@@ -118,7 +124,7 @@
         <programlisting format="linespecific">
         <programlisting format="linespecific">
 ...
 ...
 if (is_ip($rd)) {
 if (is_ip($rd)) {
-  xlog("L_INFO", "RURI domain is IP\n");
+  xlog("L_INFO", "RURI domain is an IP address (not a host name/domain)\n");
 }
 }
 ...
 ...
         </programlisting>
         </programlisting>
@@ -360,7 +366,8 @@ switch($rc) {
       </title>
       </title>
 
 
       <para>
       <para>
-        Returns TRUE if both IP's are the same. FALSE otherwise. This function also allows comparing an IPv6 against an IPv6 reference.
+        Returns TRUE if both IP addresses are the same. FALSE otherwise.
+	This function also allows comparing an IPv6 against an IPv6 reference.
       </para>
       </para>
 
 
       <para>Parameters:</para>
       <para>Parameters:</para>
@@ -403,7 +410,8 @@ if (compare_ips("1080:0000:0000:0000:0008:0800:200C:417A", "[1080::8:800:200C:41
       </title>
       </title>
 
 
       <para>
       <para>
-        Returns TRUE if both IP's are the same. FALSE otherwise. This function does NOT allow comparing an IPv6 against an IPv6 reference.
+        Returns TRUE if both IP's are the same. FALSE otherwise. This function does NOT 
+	allow comparing an IPv6 against an IPv6 reference.
       </para>
       </para>
 
 
       <para>Parameters:</para>
       <para>Parameters:</para>