This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

PATCH: ip6.h ip6_hdr comment update, ip6.h future?


Hi,

In glibc 2.2.2, ip6_hdr comments date back to old deprecated IPv6
specification, and should be updated for RFC2460.

Stig Venaas mentioned this in 1999, and proposed more radical changes:
http://sources.redhat.com/ml/libc-alpha/1999-q1/msg00016.html

However, this patch only changes the comments, keeping the data structures
identical to current and work-in-progress implementation document:
ftp://ftp.ietf.org/internet-drafts/draft-ietf-ipngwg-rfc2292bis-02.txt
(2.1)

The abovementioned draft makes some other minor changes too, e.g. in:

---
struct ip6_rthdr0
  {
    uint8_t  ip6r0_nxt;       /* next header */
    uint8_t  ip6r0_len;       /* length in units of 8 octets */
    uint8_t  ip6r0_type;      /* always zero */
    uint8_t  ip6r0_segleft;   /* segments left */
    uint8_t  ip6r0_reserved;  /* reserved field */
    uint8_t  ip6r0_slmap[3];  /* strict/loose bit map */
    struct in6_addr  ip6r0_addr[1];  /* up to 23 addresses */
  };
---
where ip6r0_slmap[3] and following struct are removed and replaced by
uint32_t ip6r0_reserved instead of uint8_t.

Also, some other structs like ip6_ext, ip6_opt, IP6OPT_* definitions etc.
also haven't been added yet.  Perhaps this has been intentional?  If there
is interest, I might have time to create a diff of these?

Please Cc:.

-- 
Pekka Savola                 "Tell me of difficulties surmounted,
Netcore Oy                   not those you stumble over and fall"
Systems. Networks. Security.  -- Robert Jordan: A Crown of Swords
--- netinet/ip6.h	Fri Apr  6 19:30:02 2001
+++ netinet.new/ip6.h	Sun Jun 10 19:52:16 2001
@@ -28,12 +28,12 @@
       {
 	struct ip6_hdrctl 
 	  {
-	    uint32_t ip6_un1_flow;   /* 24 bits of flow-ID */
+	    uint32_t ip6_un1_flow;   /* 4 bits version, 8 bits TC, 20 bits flow-ID */
 	    uint16_t ip6_un1_plen;   /* payload length */
 	    uint8_t  ip6_un1_nxt;    /* next header */
 	    uint8_t  ip6_un1_hlim;   /* hop limit */
 	  } ip6_un1;
-	uint8_t ip6_un2_vfc;       /* 4 bits version, 4 bits priority */
+	uint8_t ip6_un2_vfc;       /* 4 bits version, top 4 bits tclass */
       } ip6_ctlun;
     struct in6_addr ip6_src;      /* source address */
     struct in6_addr ip6_dst;      /* destination address */

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]