Navigation


Changeset 597:f051e3795dae in freeDiameter for extensions/dict_rfc5777


Ignore:
Timestamp:
Nov 17, 2010, 7:56:35 PM (13 years ago)
Author:
Francois Bard <francois@tera.ics.keio.ac.jp>
Branch:
default
Children:
598:d46af51c019d, 599:1dade7d4cf2e
Phase:
public
Message:

Updates comments and a compiler dependent piece of code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/dict_rfc5777/dict_rfc5777.c

    r595 r597  
    3434*********************************************************************************************************/
    3535
    36 /*********************************************************************************************************
     36/*
     37
    3738The following table complete the one in RFC 5777. The AVPs are implemented in the order of the table.
    3839We try to keep the structure of the grouped AVP by declaring the contained AVPs just before the grouped AVP they depend on.
     
    4748+++     QoS-Parameters                          576     5777    Grouped                 no specific AVPs? see RFC 5624
    4849+++     QoS-Profile-Template                    --------------------------------
    49 +++     Treatment-Action                        572     5777    Enumerated              Unclear, grouped or enum?
     50+++     Treatment-Action                        572     5777    Enumerated              Type is Enumerated. See Errata 2334 for RFC5777
    5051++      Excess-Treatment                        577     5777    Grouped
    5152++      QoS-Parameters                          --------------------------------
     
    6465+++     Time-Of-Day-End                         562     5777    Unsigned32
    6566+++     Time-Of-Day-Start                       561     5777    Unsigned32
    66 ++      Time-Of-Day-Condition                   560     5777    Grouped
     67++      Time-Of-Day-Condition                   560     5777    Grouped                 Some AVPs were omitted. See Errata 2333 for RFC5777
    6768+++++   High-User-Priority                      559     5777    Unsigned32
    6869+++++   Low-User-Priority                       558     5777    Unsigned32
     
    7879+++     ETH-Option                              548     5777    Grouped
    7980++++    Negated                                 517     5777    Enumerated
    80 ++++    ICMP-Code                               547     5777    Integer32               Changed from Enumerated. See AVP for details.
     81++++    ICMP-Code                               547     5777    Integer32               Changed from Enumerated for implementation reason. See AVP for details.
    8182++++    ICMP-Type-Number                        546     5777    Enumerated
    8283+++     ICMP-Type                               545     5777    Grouped
     
    99100++++    IP-Address-Range                        519     5777    Grouped
    100101+++++   IP-Address                              --------------------------------
    101 +++++   IP-Mask-Bit-Mask-Width                  523     5777    Unsigned32
     102+++++   IP-Mask-Bit-Mask-Width                  523     5777    Unsigned32              Name is IP-Mask-Bit-Mask-Width. See Errata 2335 for RFC5777
    102103++++    IP-Address-Mask                         522     5777    Grouped
    103104++++    MAC-Address                             524     5777    OctetString
     
    128129        QoS-Resources                           508     5777    Grouped
    129130
    130 ****************************/
     131*/
    131132
    132133
     
    151152
    152153/*
    153         NOTES TO SELF
    154 
    155         verifier si on a besoin de tout les defines
    156         - Que faut il faire pour la section 10.2 et 10.3?
    157         - La definition de Filter-Rule est chelou
    158         - La definition de QoS-Parameters est chelou
    159         - relire la rfc en entier
     154
     155NOTES
     156
     157Sections 10.2 and 10.3 of the RFC5777 have been ignored
    160158
    161159*/
     
    14501448                        http://www.iana.org/assignments/dscp-registry/dscp-registry.txt
    14511449
    1452                         Last updated : 2010-05-11
     1450                        Last updated in code : 2010-05-11
    14531451
    14541452                        */
    14551453                        struct dict_object      *       type;
    14561454                        struct dict_type_data           tdata = { AVP_TYPE_INTEGER32,   "Enumerated(Diffserv-Code-Point)"       , NULL, NULL, NULL };
    1457                         struct dict_enumval_data        t_000000 = { "CS0",             { .i32 = 0b000000 }};
    1458                         struct dict_enumval_data        t_001000 = { "CS1",             { .i32 = 0b001000 }};
    1459                         struct dict_enumval_data        t_010000 = { "CS2",             { .i32 = 0b010000 }};
    1460                         struct dict_enumval_data        t_011000 = { "CS3",             { .i32 = 0b011000 }};
    1461                         struct dict_enumval_data        t_100000 = { "CS4",             { .i32 = 0b100000 }};
    1462                         struct dict_enumval_data        t_101000 = { "CS5",             { .i32 = 0b101000 }};
    1463                         struct dict_enumval_data        t_110000 = { "CS6",             { .i32 = 0b110000 }};
    1464                         struct dict_enumval_data        t_111000 = { "CS7",             { .i32 = 0b111000 }};
    1465                         struct dict_enumval_data        t_001010 = { "AF11",            { .i32 = 0b001010 }};
    1466                         struct dict_enumval_data        t_001100 = { "AF12",            { .i32 = 0b001100 }};
    1467                         struct dict_enumval_data        t_001110 = { "AF13",            { .i32 = 0b001110 }};
    1468                         struct dict_enumval_data        t_010010 = { "AF21",            { .i32 = 0b010010 }};
    1469                         struct dict_enumval_data        t_010100 = { "AF22",            { .i32 = 0b010100 }};
    1470                         struct dict_enumval_data        t_010110 = { "AF23",            { .i32 = 0b010110 }};
    1471                         struct dict_enumval_data        t_011010 = { "AF31",            { .i32 = 0b011010 }};
    1472                         struct dict_enumval_data        t_011100 = { "AF32",            { .i32 = 0b011100 }};
    1473                         struct dict_enumval_data        t_011110 = { "AF33",            { .i32 = 0b011110 }};
    1474                         struct dict_enumval_data        t_100010 = { "AF41",            { .i32 = 0b100010 }};
    1475                         struct dict_enumval_data        t_100100 = { "AF42",            { .i32 = 0b100100 }};
    1476                         struct dict_enumval_data        t_100110 = { "AF43",            { .i32 = 0b100110 }};
    1477                         struct dict_enumval_data        t_101110 = { "EF PHB",          { .i32 = 0b101110 }};
    1478                         struct dict_enumval_data        t_101100 = { "VOICE-ADMIT",     { .i32 = 0b101100 }};
     1455                        struct dict_enumval_data        t_0  = { "CS0",         { .i32 = 0 }};
     1456                        struct dict_enumval_data        t_8  = { "CS1",         { .i32 = 8 }};
     1457                        struct dict_enumval_data        t_16 = { "CS2",         { .i32 = 16 }};
     1458                        struct dict_enumval_data        t_24 = { "CS3",         { .i32 = 24 }};
     1459                        struct dict_enumval_data        t_32 = { "CS4",         { .i32 = 32 }};
     1460                        struct dict_enumval_data        t_40 = { "CS5",         { .i32 = 40 }};
     1461                        struct dict_enumval_data        t_48 = { "CS6",         { .i32 = 48 }};
     1462                        struct dict_enumval_data        t_56 = { "CS7",         { .i32 = 56 }};
     1463                        struct dict_enumval_data        t_10 = { "AF11",        { .i32 = 10 }};
     1464                        struct dict_enumval_data        t_12 = { "AF12",        { .i32 = 12 }};
     1465                        struct dict_enumval_data        t_14 = { "AF13",        { .i32 = 14 }};
     1466                        struct dict_enumval_data        t_18 = { "AF21",        { .i32 = 18 }};
     1467                        struct dict_enumval_data        t_20 = { "AF22",        { .i32 = 20 }};
     1468                        struct dict_enumval_data        t_22 = { "AF23",        { .i32 = 22 }};
     1469                        struct dict_enumval_data        t_26 = { "AF31",        { .i32 = 26 }};
     1470                        struct dict_enumval_data        t_28 = { "AF32",        { .i32 = 28 }};
     1471                        struct dict_enumval_data        t_30 = { "AF33",        { .i32 = 30 }};
     1472                        struct dict_enumval_data        t_34 = { "AF41",        { .i32 = 34 }};
     1473                        struct dict_enumval_data        t_36 = { "AF42",        { .i32 = 36 }};
     1474                        struct dict_enumval_data        t_38 = { "AF43",        { .i32 = 38 }};
     1475                        struct dict_enumval_data        t_46 = { "EF PHB",      { .i32 = 46 }};
     1476                        struct dict_enumval_data        t_44 = { "VOICE-ADMIT", { .i32 = 44 }};
    14791477
    14801478                        struct dict_avp_data    data = {
     
    14881486                        /* Create the Enumerated type, and then the AVP */
    14891487                        CHECK_dict_new( DICT_TYPE, &tdata , NULL, &type);
    1490                         CHECK_dict_new( DICT_ENUMVAL, &t_000000 , type, NULL);
    1491                         CHECK_dict_new( DICT_ENUMVAL, &t_001000 , type, NULL);
    1492                         CHECK_dict_new( DICT_ENUMVAL, &t_010000 , type, NULL);
    1493                         CHECK_dict_new( DICT_ENUMVAL, &t_011000 , type, NULL);
    1494                         CHECK_dict_new( DICT_ENUMVAL, &t_100000 , type, NULL);
    1495                         CHECK_dict_new( DICT_ENUMVAL, &t_101000 , type, NULL);
    1496                         CHECK_dict_new( DICT_ENUMVAL, &t_110000 , type, NULL);
    1497                         CHECK_dict_new( DICT_ENUMVAL, &t_111000 , type, NULL);
    1498                         CHECK_dict_new( DICT_ENUMVAL, &t_001010 , type, NULL);
    1499                         CHECK_dict_new( DICT_ENUMVAL, &t_001100 , type, NULL);
    1500                         CHECK_dict_new( DICT_ENUMVAL, &t_001110 , type, NULL);
    1501                         CHECK_dict_new( DICT_ENUMVAL, &t_010010 , type, NULL);
    1502                         CHECK_dict_new( DICT_ENUMVAL, &t_010100 , type, NULL);
    1503                         CHECK_dict_new( DICT_ENUMVAL, &t_010110 , type, NULL);
    1504                         CHECK_dict_new( DICT_ENUMVAL, &t_011010 , type, NULL);
    1505                         CHECK_dict_new( DICT_ENUMVAL, &t_011100 , type, NULL);
    1506                         CHECK_dict_new( DICT_ENUMVAL, &t_011110 , type, NULL);
    1507                         CHECK_dict_new( DICT_ENUMVAL, &t_100010 , type, NULL);
    1508                         CHECK_dict_new( DICT_ENUMVAL, &t_100100 , type, NULL);
    1509                         CHECK_dict_new( DICT_ENUMVAL, &t_100110 , type, NULL);
    1510                         CHECK_dict_new( DICT_ENUMVAL, &t_101110 , type, NULL);
    1511                         CHECK_dict_new( DICT_ENUMVAL, &t_101100 , type, NULL);
     1488                        CHECK_dict_new( DICT_ENUMVAL, &t_0  , type, NULL);
     1489                        CHECK_dict_new( DICT_ENUMVAL, &t_8 , type, NULL);
     1490                        CHECK_dict_new( DICT_ENUMVAL, &t_16 , type, NULL);
     1491                        CHECK_dict_new( DICT_ENUMVAL, &t_24 , type, NULL);
     1492                        CHECK_dict_new( DICT_ENUMVAL, &t_32 , type, NULL);
     1493                        CHECK_dict_new( DICT_ENUMVAL, &t_40 , type, NULL);
     1494                        CHECK_dict_new( DICT_ENUMVAL, &t_48 , type, NULL);
     1495                        CHECK_dict_new( DICT_ENUMVAL, &t_56 , type, NULL);
     1496                        CHECK_dict_new( DICT_ENUMVAL, &t_10 , type, NULL);
     1497                        CHECK_dict_new( DICT_ENUMVAL, &t_12 , type, NULL);
     1498                        CHECK_dict_new( DICT_ENUMVAL, &t_14 , type, NULL);
     1499                        CHECK_dict_new( DICT_ENUMVAL, &t_18 , type, NULL);
     1500                        CHECK_dict_new( DICT_ENUMVAL, &t_20 , type, NULL);
     1501                        CHECK_dict_new( DICT_ENUMVAL, &t_22 , type, NULL);
     1502                        CHECK_dict_new( DICT_ENUMVAL, &t_26 , type, NULL);
     1503                        CHECK_dict_new( DICT_ENUMVAL, &t_28 , type, NULL);
     1504                        CHECK_dict_new( DICT_ENUMVAL, &t_30 , type, NULL);
     1505                        CHECK_dict_new( DICT_ENUMVAL, &t_34 , type, NULL);
     1506                        CHECK_dict_new( DICT_ENUMVAL, &t_36 , type, NULL);
     1507                        CHECK_dict_new( DICT_ENUMVAL, &t_38 , type, NULL);
     1508                        CHECK_dict_new( DICT_ENUMVAL, &t_46 , type, NULL);
     1509                        CHECK_dict_new( DICT_ENUMVAL, &t_44 , type, NULL);
    15121510                        CHECK_dict_new( DICT_AVP, &data , type, NULL);
    15131511                }
Note: See TracChangeset for help on using the changeset viewer.