Commit e7437c40 authored by Théophile Bastian's avatar Théophile Bastian

Decode prefixes with v4-over-v6 AE.

parent 4af65f9a
...@@ -54,7 +54,7 @@ struct timeval seqno_time = {0, 0}; ...@@ -54,7 +54,7 @@ struct timeval seqno_time = {0, 0};
static int static int
known_ae(int ae) known_ae(int ae)
{ {
return ae <= AE_IPV6_LOCAL; return ae <= AE_IPV6_LOCAL || ae == AE_V4OV6;
} }
/* Parse a network prefix, encoded in the somewhat baroque compressed /* Parse a network prefix, encoded in the somewhat baroque compressed
...@@ -85,6 +85,7 @@ network_prefix(int ae, int plen, unsigned int omitted, ...@@ -85,6 +85,7 @@ network_prefix(int ae, int plen, unsigned int omitted,
ret = 0; ret = 0;
break; break;
case AE_IPV4: case AE_IPV4:
case AE_V4OV6:
if(omitted > 4 || pb > 4 || (pb > omitted && len < pb - omitted)) if(omitted > 4 || pb > 4 || (pb > omitted && len < pb - omitted))
return -1; return -1;
memcpy(prefix, v4prefix, 12); memcpy(prefix, v4prefix, 12);
......
...@@ -46,6 +46,7 @@ THE SOFTWARE. ...@@ -46,6 +46,7 @@ THE SOFTWARE.
#define AE_IPV4 1 #define AE_IPV4 1
#define AE_IPV6 2 #define AE_IPV6 2
#define AE_IPV6_LOCAL 3 #define AE_IPV6_LOCAL 3
#define AE_V4OV6 240
extern unsigned short myseqno; extern unsigned short myseqno;
extern struct timeval seqno_time; extern struct timeval seqno_time;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment