| 578 | |
| 579 | |
| 580 | static int dm_prepare_globals(void) |
| 581 | { |
| 582 | memset(&dm_dict, 0, sizeof dm_dict); |
| 583 | |
| 584 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 585 | "Destination-Realm", &dm_dict.Destination_Realm, ENOENT)); |
| 586 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 587 | "Result-Code", &dm_dict.Result_Code, ENOENT)); |
| 588 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 589 | "Error-Message", &dm_dict.Error_Message, ENOENT)); |
| 590 | |
| 591 | /* accounting AVPs */ |
| 592 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 593 | "Accounting-Record-Type", &dm_dict.Accounting_Record_Type, ENOENT)); |
| 594 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 595 | "Accounting-Record-Number", &dm_dict.Accounting_Record_Number, ENOENT)); |
| 596 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 597 | "Acct-Session-Id", &dm_dict.Acct_Session_Id, ENOENT)); |
| 598 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 599 | "Event-Timestamp", &dm_dict.Event_Timestamp, ENOENT)); |
| 600 | |
| 601 | /* auth AVPs */ |
| 602 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 603 | "Auth-Application-Id", &dm_dict.Auth_Application_Id, ENOENT)); |
| 604 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 605 | "Auth-Session-State", &dm_dict.Auth_Session_State, ENOENT)); |
| 606 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 607 | "SIP-AOR", &dm_dict.SIP_AOR, ENOENT)); |
| 608 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 609 | "SIP-Method", &dm_dict.SIP_Method, ENOENT)); |
| 610 | |
| 611 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 612 | "Transaction-Id", &dm_dict.Transaction_Id, ENOENT)); |
| 613 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 614 | "Session-Id", &dm_dict.Session_Id, ENOENT)); |
| 615 | FD_CHECK(fd_dict_search(fd_g_config->cnf_dict, DICT_AVP, AVP_BY_NAME, |
| 616 | "Route-Record", &dm_dict.Route_Record, ENOENT)); |
| 617 | |
| 618 | return 0; |
| 619 | } |
| 620 | |
| 621 | |
| 622 | void dm_peer_loop(int _) |