Przeglądaj źródła

modules/pv: added pseudo-variable ($aa) for access to algorithm in autorization header

Jason Penton 11 lat temu
rodzic
commit
961542fa1c
2 zmienionych plików z 6 dodań i 0 usunięć
  1. 3 0
      modules/pv/pv.c
  2. 3 0
      modules/pv/pv_core.c

+ 3 - 0
modules/pv/pv.c

@@ -115,6 +115,9 @@ static pv_export_t mod_pvs[] = {
 	{{"aU", (sizeof("aU")-1)}, /* */
 		PVT_OTHER, pv_get_authattr, 0,
 		0, 0, pv_init_iname, 5},
+	{{"aa", (sizeof("aa")-1)}, /* auth algorithm */
+		PVT_OTHER, pv_get_authattr, 0,
+		0, 0, pv_init_iname, 6},	
 	{{"Au", (sizeof("Au")-1)}, /* */
 		PVT_OTHER, pv_get_acc_username, 0,
 		0, 0, pv_init_iname, 1},

+ 3 - 0
modules/pv/pv_core.c

@@ -1242,6 +1242,9 @@ int pv_get_authattr(struct sip_msg *msg, pv_param_t *param,
 	}
 	switch(param->pvn.u.isname.name.n)
 	{
+		case 6:
+			return pv_get_strval(msg, param, res,
+					&((auth_body_t*)(hdr->parsed))->digest.alg.alg_str);
 		case 4:
 			return pv_get_strval(msg, param, res,
 					&((auth_body_t*)(hdr->parsed))->digest.username.domain);