Mercurial > hg > freeDiameter
comparison extensions/app_sip/diamsip.h @ 419:9cc48cd22e67
Finished RTR on Diameter-SIP
author | Alexandre Westfahl <awestfahl@freediameter.net> |
---|---|
date | Mon, 12 Jul 2010 22:56:33 +0900 |
parents | c2fb5b26bfcb |
children | c8a61dabea55 |
comparison
equal
deleted
inserted
replaced
418:1097c885c065 | 419:9cc48cd22e67 |
---|---|
85 void DigestCalcResponse(HASHHEX HA1,char * pszNonce,char * pszNonceCount,char * pszCNonce,char * pszQop,char * pszMethod,char * pszDigestUri,HASHHEX HEntity,HASHHEX Response); | 85 void DigestCalcResponse(HASHHEX HA1,char * pszNonce,char * pszNonceCount,char * pszCNonce,char * pszQop,char * pszMethod,char * pszDigestUri,HASHHEX HEntity,HASHHEX Response); |
86 void DigestCalcResponseAuth(HASHHEX HA1,char * pszNonce,char * pszNonceCount,char * pszCNonce,char * pszQop,char * pszMethod,char * pszDigestUri,HASHHEX HEntity,HASHHEX Response); | 86 void DigestCalcResponseAuth(HASHHEX HA1,char * pszNonce,char * pszNonceCount,char * pszCNonce,char * pszQop,char * pszMethod,char * pszDigestUri,HASHHEX HEntity,HASHHEX Response); |
87 | 87 |
88 int fd_avp_search_avp ( struct avp * groupedavp, struct dict_object * what, struct avp ** avp ); | 88 int fd_avp_search_avp ( struct avp * groupedavp, struct dict_object * what, struct avp ** avp ); |
89 | 89 |
90 //thread procedure | |
91 void *rtr_socket(void *); | |
92 | |
93 struct rtrsipaor | |
94 { | |
95 char username[200]; | |
96 char sip_aor1[200]; | |
97 char sip_aor2[200]; | |
98 char sip_aor3[200]; | |
99 char strreason[200]; | |
100 char desthost[200]; | |
101 int reason; | |
102 }; | |
103 int diamsip_RTR_cb(struct rtrsipaor structure); | |
104 #define PORT 666 //TODO:put in conf file | |
105 | |
90 int ds_entry(); | 106 int ds_entry(); |
91 void fd_ext_fini(void); | 107 void fd_ext_fini(void); |
92 int diamsip_default_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act); | 108 int diamsip_default_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act); |
93 int diamsip_MAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act); | 109 int diamsip_MAR_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act); |
94 int diamsip_RTA_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act); | 110 int diamsip_RTA_cb( struct msg ** msg, struct avp * avp, struct session * sess, enum disp_action * act); |
118 | 134 |
119 //Storage for some usefull AVPs | 135 //Storage for some usefull AVPs |
120 struct diamsip_dict{ | 136 struct diamsip_dict{ |
121 struct dict_object * Auth_Session_State; | 137 struct dict_object * Auth_Session_State; |
122 struct dict_object * Auth_Application_Id; | 138 struct dict_object * Auth_Application_Id; |
139 struct dict_object * Destination_Host; | |
123 struct dict_object * User_Name; | 140 struct dict_object * User_Name; |
141 struct dict_object * Session_Id; | |
124 struct dict_object * SIP_Auth_Data_Item; | 142 struct dict_object * SIP_Auth_Data_Item; |
125 struct dict_object * SIP_Authorization; | 143 struct dict_object * SIP_Authorization; |
126 struct dict_object * SIP_Authenticate; | 144 struct dict_object * SIP_Authenticate; |
127 struct dict_object * SIP_Number_Auth_Items; | 145 struct dict_object * SIP_Number_Auth_Items; |
128 struct dict_object * SIP_Authentication_Scheme; | 146 struct dict_object * SIP_Authentication_Scheme; |
129 struct dict_object * SIP_Authentication_Info; | 147 struct dict_object * SIP_Authentication_Info; |
130 struct dict_object * SIP_Server_URI; | 148 struct dict_object * SIP_Server_URI; |
131 struct dict_object * SIP_Method; | 149 struct dict_object * SIP_Method; |
132 struct dict_object * SIP_AOR; | 150 struct dict_object * SIP_AOR; |
151 struct dict_object * SIP_Deregistration_Reason; | |
152 struct dict_object * SIP_Reason_Code; | |
153 struct dict_object * SIP_Reason_Info; | |
133 struct dict_object * Digest_URI; | 154 struct dict_object * Digest_URI; |
134 struct dict_object * Digest_Nonce; | 155 struct dict_object * Digest_Nonce; |
135 struct dict_object * Digest_Nonce_Count; | 156 struct dict_object * Digest_Nonce_Count; |
136 struct dict_object * Digest_CNonce; | 157 struct dict_object * Digest_CNonce; |
137 struct dict_object * Digest_Realm; | 158 struct dict_object * Digest_Realm; |