Project

General

Profile

Actions

Bug #1879

closed

reserved bit in GTPv1 header set wrong

Added by laforge over 7 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
High
Assignee:
Target version:
-
Start date:
12/15/2016
Due date:
% Done:

100%

Spec Reference:

Description

Three is a "reserved" bit in the flags octet of the GTPv1 header.

The existing Linux Kernel GTP code in gtp1_push_header() sets it to '1', which is wrong:

  • Wikipedia states: bit4=res, shall be 0
  • 29.060 v3.19.0 rel 99: bit456=res, shall be 0
  • 29.060 v6.9.0 rel 6: bit4=reserved, shall be 0
  • 29.060 v12.6.0 rel 12: bit4=reserved, shall be 0

as wikipedia and three versions accross all releases state the bit shall be '0', it is a good idea to set it zero.

Going back to Release 98, though, the 'reserved' bit and the 'extension header' and 'sequence number' bit are supposed to be set all to one:

  • 09.60 v7.9.0 rel 98: bit456=res, all 1
  • 09.60 v7.10.0 rel 98: bit456=res, all 1

But that is GTPv0, which we handle (correctly) in gtp0_push_header().


Files


Related issues

Related to OsmoGGSN (former OpenGGSN) - Bug #1880: handling of reserved bit in flag octet brokenClosedlaforge12/15/2016

Actions
Related to OsmoGGSN (former OpenGGSN) - Feature #1621: test + document OpenGGSN with osmo-gtp-kernel codeClosedlaforge02/23/2016

Actions
Actions

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)