@@ -2874,6 +2874,7 @@ issize_t sip_identity_d(su_home_t *home, sip_header_t *h, char *s, isize_t slen)
2874
2874
2875
2875
if (p ) {
2876
2876
ie = strchr (p , ';' );
2877
+ if (!ie ) ie = strchr (p , '\0' );
2877
2878
pp = strchr (p , '<' );
2878
2879
ppp = strchr (p , '>' );
2879
2880
@@ -2893,8 +2894,6 @@ issize_t sip_identity_d(su_home_t *home, sip_header_t *h, char *s, isize_t slen)
2893
2894
alg = strchr (alg , ';' );
2894
2895
if (alg ) {
2895
2896
* alg = '\0' ;
2896
- } else {
2897
- id -> id_info_alg = NULL ;
2898
2897
}
2899
2898
}
2900
2899
@@ -2926,23 +2925,21 @@ issize_t sip_identity_e(char b[], isize_t bsiz, sip_header_t const *h, int flags
2926
2925
2927
2926
if (id -> id_signed_identity_digest ) {
2928
2927
MSG_STRING_E (b , end , id -> id_signed_identity_digest );
2929
- MSG_CHAR_E (b , end , ';' );
2930
2928
}
2931
2929
2932
2930
if (id -> id_info ) {
2933
- MSG_STRING_E (b , end , "info=<" );
2931
+ MSG_STRING_E (b , end , "; info=<" );
2934
2932
MSG_STRING_E (b , end , id -> id_info );
2935
- MSG_STRING_E (b , end , ">; " );
2933
+ MSG_STRING_E (b , end , ">" );
2936
2934
}
2937
2935
2938
2936
if (id -> id_info_alg ) {
2939
- MSG_STRING_E (b , end , "alg=" );
2937
+ MSG_STRING_E (b , end , "; alg=" );
2940
2938
MSG_STRING_E (b , end , id -> id_info_alg );
2941
- MSG_CHAR_E (b , end , ';' );
2942
2939
}
2943
2940
2944
2941
if (id -> id_info_ppt ) {
2945
- MSG_STRING_E (b , end , "ppt=" );
2942
+ MSG_STRING_E (b , end , "; ppt=" );
2946
2943
MSG_STRING_E (b , end , id -> id_info_ppt );
2947
2944
/* No need to put ';' as following MSG_PARAMS_E starts from ';' */
2948
2945
}
0 commit comments