Navigation



Ignore:
Timestamp:
Aug 5, 2014, 11:17:23 PM (10 years ago)
Author:
Thomas Klausner <tk@giga.or.at>
Branch:
default
Phase:
public
Message:

Add more Starent AVPs, from Cisco's v15 documentation. Add one rule.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • extensions/dict_dcca_starent/dict_dcca_starent.c

    r1227 r1275  
    8888        /* Changes will be lost during the next update. Modify the source org file instead. */
    8989
    90         /* Cisco ASR 5000 Series AAA Interface  */
    91         /* Administration and Reference         */
    92         /* Release 8.x and 9.0                  */
    93         /* Last Updated June 30, 2010           */
     90        /* Cisco ASR 5000 Series AAA Interface                                              */
     91        /* Administration and Reference                                                     */
     92        /* Release 8.x and 9.0                                                              */
     93        /* Last Updated June 30, 2010                                                       */
     94        /* updated using v15 docs from Jan 2014                                             */
     95        /* www.cisco.com/c/dam/en/us/td/docs/wireless/asr_5000/15-0/15-0-AAA-Reference.pdf  */
    9496        /* SN-Volume-Quota-Threshold */
    9597        {
     
    283285        };
    284286
     287        /* SN-Session-Start-Indicator */
     288        {
     289                struct dict_avp_data data = {
     290                        522,    /* Code */
     291                        8164,   /* Vendor */
     292                        "SN-Session-Start-Indicator",   /* Name */
     293                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     294                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     295                        AVP_TYPE_OCTETSTRING    /* base type of data */
     296                };
     297                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     298        };
     299
     300        /* SN-Phase0-PSAPName */
     301        {
     302                struct dict_avp_data data = {
     303                        523,    /* Code */
     304                        8164,   /* Vendor */
     305                        "SN-Phase0-PSAPName",   /* Name */
     306                        AVP_FLAG_VENDOR,        /* Fixed flags */
     307                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     308                        AVP_TYPE_OCTETSTRING    /* base type of data */
     309                };
     310                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     311        };
     312
     313        /* SN-Charging-Id */
     314        {
     315                struct dict_avp_data data = {
     316                        525,    /* Code */
     317                        8164,   /* Vendor */
     318                        "SN-Charging-Id",       /* Name */
     319                        AVP_FLAG_VENDOR,        /* Fixed flags */
     320                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     321                        AVP_TYPE_OCTETSTRING    /* base type of data */
     322                };
     323                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     324        };
     325
     326        /* SN-Remaining-Service-Unit */
     327        {
     328                struct dict_avp_data data = {
     329                        526,    /* Code */
     330                        8164,   /* Vendor */
     331                        "SN-Remaining-Service-Unit",    /* Name */
     332                        AVP_FLAG_VENDOR,        /* Fixed flags */
     333                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     334                        AVP_TYPE_GROUPED        /* base type of data */
     335                };
     336                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     337        };
     338
     339        /* SN-Service-Start-Timestamp */
     340        {
     341                struct dict_avp_data data = {
     342                        527,    /* Code */
     343                        8164,   /* Vendor */
     344                        "SN-Service-Start-Timestamp",   /* Name */
     345                        AVP_FLAG_VENDOR,        /* Fixed flags */
     346                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     347                        AVP_TYPE_OCTETSTRING    /* base type of data */
     348                };
     349                CHECK_dict_new(DICT_AVP, &data, Time_type, NULL);
     350        };
     351
     352        /* SN-Rulsebase-Id */
     353        {
     354                struct dict_avp_data data = {
     355                        528,    /* Code */
     356                        8164,   /* Vendor */
     357                        "SN-Rulsebase-Id",      /* Name */
     358                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     359                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     360                        AVP_TYPE_OCTETSTRING    /* base type of data */
     361                };
     362                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     363        };
     364
     365        /* SN-CF-Policy-ID */
     366        {
     367                struct dict_avp_data data = {
     368                        529,    /* Code */
     369                        8164,   /* Vendor */
     370                        "SN-CF-Policy-ID",      /* Name */
     371                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     372                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     373                        AVP_TYPE_UNSIGNED32     /* base type of data */
     374                };
     375                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     376        };
     377
     378        /* SN-Charging-Collection-Function-Name */
     379        {
     380                struct dict_avp_data data = {
     381                        530,    /* Code */
     382                        8164,   /* Vendor */
     383                        "SN-Charging-Collection-Function-Name", /* Name */
     384                        AVP_FLAG_VENDOR,        /* Fixed flags */
     385                        AVP_FLAG_VENDOR,        /* Fixed flag values */
     386                        AVP_TYPE_OCTETSTRING    /* base type of data */
     387                };
     388                CHECK_dict_new(DICT_AVP, &data, UTF8String_type, NULL);
     389        };
     390
     391        /* SN-Fast-Reauth-Username */
     392        {
     393                struct dict_avp_data data = {
     394                        11010,  /* Code */
     395                        8164,   /* Vendor */
     396                        "SN-Fast-Reauth-Username",      /* Name */
     397                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     398                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     399                        AVP_TYPE_OCTETSTRING    /* base type of data */
     400                };
     401                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     402        };
     403
     404        /* SN-Pseudonym-Username */
     405        {
     406                struct dict_avp_data data = {
     407                        11011,  /* Code */
     408                        8164,   /* Vendor */
     409                        "SN-Pseudonym-Username",        /* Name */
     410                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flags */
     411                        AVP_FLAG_VENDOR |AVP_FLAG_MANDATORY,    /* Fixed flag values */
     412                        AVP_TYPE_OCTETSTRING    /* base type of data */
     413                };
     414                CHECK_dict_new(DICT_AVP, &data, NULL, NULL);
     415        };
     416
     417
    285418
    286419        /* Rules section */
     420
     421        /* SN-Remaining-Service-Unit */
     422        {
     423                struct dict_object *rule_avp;
     424                struct dict_avp_request vpa;
     425                vpa.avp_vendor = 8164;
     426                vpa.avp_name = "SN-Remaining-Service-Unit";
     427                CHECK_dict_search(DICT_AVP, AVP_BY_NAME_AND_VENDOR, &vpa, &rule_avp);
     428                struct local_rules_definition rules[] = {
     429                        {  "Tariff-Change-Usage",       RULE_OPTIONAL,  -1, 1 },
     430                        {  "CC-Time",                   RULE_OPTIONAL,  -1, 1 },
     431                        {  "CC-Total-Octets",           RULE_OPTIONAL,  -1, 1 },
     432                        {  "CC-Input-Octets",           RULE_OPTIONAL,  -1, 1 },
     433                        {  "CC-Output-Octets",          RULE_OPTIONAL,  -1, 1 },
     434                        {  "CC-Service-Specific-Units", RULE_OPTIONAL,  -1, 1 },
     435                        {  "Reporting-Reason",          RULE_OPTIONAL,  -1, 1 }
     436                };
     437                PARSE_loc_rules( rules, rule_avp );
     438        }
    287439
    288440        /* SN-Total-Used-Service-Unit */
Note: See TracChangeset for help on using the changeset viewer.