@@ -100,12 +100,12 @@ int ntlm_init_ctx(struct ntlm_ctx **ctx)
100
100
_ctx = calloc (1 , sizeof (struct ntlm_ctx ));
101
101
if (!_ctx ) return ENOMEM ;
102
102
103
- _ctx -> from_oem = iconv_open ("UCS-2LE " , "UTF-8" );
103
+ _ctx -> from_oem = iconv_open ("UTF16LE " , "UTF-8" );
104
104
if (_ctx -> from_oem == (iconv_t ) - 1 ) {
105
105
ret = errno ;
106
106
}
107
107
108
- _ctx -> to_oem = iconv_open ("UTF-8" , "UCS-2LE " );
108
+ _ctx -> to_oem = iconv_open ("UTF-8" , "UTF16LE " );
109
109
if (_ctx -> to_oem == (iconv_t ) - 1 ) {
110
110
iconv_close (_ctx -> from_oem );
111
111
ret = errno ;
@@ -189,7 +189,7 @@ bool ntlm_casecmp(const char *s1, const char *s2)
189
189
190
190
/**
191
191
* @brief Converts a string using the provided iconv context.
192
- * This function is ok only to convert utf8<->ucs2
192
+ * This function is ok only to convert utf8<->utf16le
193
193
*
194
194
* @param cd The iconv context
195
195
* @param in Input buffer
@@ -290,7 +290,7 @@ static int ntlm_decode_oem_str(struct wire_field_hdr *str_hdr,
290
290
return 0 ;
291
291
}
292
292
293
- static int ntlm_encode_ucs2_str_hdr (struct ntlm_ctx * ctx ,
293
+ static int ntlm_encode_u16l_str_hdr (struct ntlm_ctx * ctx ,
294
294
struct wire_field_hdr * hdr ,
295
295
struct ntlm_buffer * buffer ,
296
296
size_t * data_offs ,
@@ -313,7 +313,7 @@ static int ntlm_encode_ucs2_str_hdr(struct ntlm_ctx *ctx,
313
313
return 0 ;
314
314
}
315
315
316
- static int ntlm_decode_ucs2_str_hdr (struct ntlm_ctx * ctx ,
316
+ static int ntlm_decode_u16l_str_hdr (struct ntlm_ctx * ctx ,
317
317
struct wire_field_hdr * str_hdr ,
318
318
struct ntlm_buffer * buffer ,
319
319
size_t payload_offs , char * * str )
@@ -431,7 +431,7 @@ static int ntlm_decode_field(struct wire_field_hdr *hdr,
431
431
return 0 ;
432
432
}
433
433
434
- static int ntlm_encode_av_pair_ucs2_str (struct ntlm_ctx * ctx ,
434
+ static int ntlm_encode_av_pair_u16l_str (struct ntlm_ctx * ctx ,
435
435
struct ntlm_buffer * buffer ,
436
436
size_t * data_offs ,
437
437
enum msv_av_ids av_id ,
@@ -459,7 +459,7 @@ static int ntlm_encode_av_pair_ucs2_str(struct ntlm_ctx *ctx,
459
459
return 0 ;
460
460
}
461
461
462
- static int ntlm_decode_av_pair_ucs2_str (struct ntlm_ctx * ctx ,
462
+ static int ntlm_decode_av_pair_u16l_str (struct ntlm_ctx * ctx ,
463
463
struct wire_av_pair * av_pair ,
464
464
char * * str )
465
465
{
@@ -570,35 +570,35 @@ int ntlm_encode_target_info(struct ntlm_ctx *ctx, char *nb_computer_name,
570
570
if (!buffer .data ) return ENOMEM ;
571
571
572
572
if (nb_computer_name ) {
573
- ret = ntlm_encode_av_pair_ucs2_str (ctx , & buffer , & data_offs ,
573
+ ret = ntlm_encode_av_pair_u16l_str (ctx , & buffer , & data_offs ,
574
574
MSV_AV_NB_COMPUTER_NAME ,
575
575
nb_computer_name ,
576
576
nb_computer_name_len );
577
577
if (ret ) goto done ;
578
578
}
579
579
if (nb_domain_name ) {
580
- ret = ntlm_encode_av_pair_ucs2_str (ctx , & buffer , & data_offs ,
580
+ ret = ntlm_encode_av_pair_u16l_str (ctx , & buffer , & data_offs ,
581
581
MSV_AV_NB_DOMAIN_NAME ,
582
582
nb_domain_name ,
583
583
nb_domain_name_len );
584
584
if (ret ) goto done ;
585
585
}
586
586
if (dns_computer_name ) {
587
- ret = ntlm_encode_av_pair_ucs2_str (ctx , & buffer , & data_offs ,
587
+ ret = ntlm_encode_av_pair_u16l_str (ctx , & buffer , & data_offs ,
588
588
MSV_AV_DNS_COMPUTER_NAME ,
589
589
dns_computer_name ,
590
590
dns_computer_name_len );
591
591
if (ret ) goto done ;
592
592
}
593
593
if (dns_domain_name ) {
594
- ret = ntlm_encode_av_pair_ucs2_str (ctx , & buffer , & data_offs ,
594
+ ret = ntlm_encode_av_pair_u16l_str (ctx , & buffer , & data_offs ,
595
595
MSV_AV_DNS_DOMAIN_NAME ,
596
596
dns_domain_name ,
597
597
dns_domain_name_len );
598
598
if (ret ) goto done ;
599
599
}
600
600
if (dns_tree_name ) {
601
- ret = ntlm_encode_av_pair_ucs2_str (ctx , & buffer , & data_offs ,
601
+ ret = ntlm_encode_av_pair_u16l_str (ctx , & buffer , & data_offs ,
602
602
MSV_AV_DNS_TREE_NAME ,
603
603
dns_tree_name ,
604
604
dns_tree_name_len );
@@ -626,7 +626,7 @@ int ntlm_encode_target_info(struct ntlm_ctx *ctx, char *nb_computer_name,
626
626
if (ret ) goto done ;
627
627
}
628
628
if (av_target_name ) {
629
- ret = ntlm_encode_av_pair_ucs2_str (ctx , & buffer , & data_offs ,
629
+ ret = ntlm_encode_av_pair_u16l_str (ctx , & buffer , & data_offs ,
630
630
MSV_AV_TARGET_NAME ,
631
631
av_target_name ,
632
632
av_target_name_len );
@@ -695,7 +695,7 @@ int ntlm_decode_target_info(struct ntlm_ctx *ctx, struct ntlm_buffer *buffer,
695
695
break ;
696
696
case MSV_AV_TARGET_NAME :
697
697
if (!av_target_name ) continue ;
698
- ret = ntlm_decode_av_pair_ucs2_str (ctx , av_pair , & av_target );
698
+ ret = ntlm_decode_av_pair_u16l_str (ctx , av_pair , & av_target );
699
699
if (ret ) goto done ;
700
700
break ;
701
701
case MSV_AV_SINGLE_HOST :
@@ -715,27 +715,27 @@ int ntlm_decode_target_info(struct ntlm_ctx *ctx, struct ntlm_buffer *buffer,
715
715
break ;
716
716
case MSV_AV_DNS_TREE_NAME :
717
717
if (!dns_tree_name ) continue ;
718
- ret = ntlm_decode_av_pair_ucs2_str (ctx , av_pair , & dns_tree );
718
+ ret = ntlm_decode_av_pair_u16l_str (ctx , av_pair , & dns_tree );
719
719
if (ret ) goto done ;
720
720
break ;
721
721
case MSV_AV_DNS_DOMAIN_NAME :
722
722
if (!dns_domain_name ) continue ;
723
- ret = ntlm_decode_av_pair_ucs2_str (ctx , av_pair , & dns_domain );
723
+ ret = ntlm_decode_av_pair_u16l_str (ctx , av_pair , & dns_domain );
724
724
if (ret ) goto done ;
725
725
break ;
726
726
case MSV_AV_DNS_COMPUTER_NAME :
727
727
if (!dns_computer_name ) continue ;
728
- ret = ntlm_decode_av_pair_ucs2_str (ctx , av_pair , & dns_computer );
728
+ ret = ntlm_decode_av_pair_u16l_str (ctx , av_pair , & dns_computer );
729
729
if (ret ) goto done ;
730
730
break ;
731
731
case MSV_AV_NB_DOMAIN_NAME :
732
732
if (!nb_domain_name ) continue ;
733
- ret = ntlm_decode_av_pair_ucs2_str (ctx , av_pair , & nb_domain );
733
+ ret = ntlm_decode_av_pair_u16l_str (ctx , av_pair , & nb_domain );
734
734
if (ret ) goto done ;
735
735
break ;
736
736
case MSV_AV_NB_COMPUTER_NAME :
737
737
if (!nb_computer_name ) continue ;
738
- ret = ntlm_decode_av_pair_ucs2_str (ctx , av_pair , & nb_computer );
738
+ ret = ntlm_decode_av_pair_u16l_str (ctx , av_pair , & nb_computer );
739
739
if (ret ) goto done ;
740
740
break ;
741
741
default :
@@ -1063,7 +1063,7 @@ int ntlm_encode_chal_msg(struct ntlm_ctx *ctx,
1063
1063
if ((flags & NTLMSSP_TARGET_TYPE_SERVER )
1064
1064
|| (flags & NTLMSSP_TARGET_TYPE_DOMAIN )) {
1065
1065
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1066
- ret = ntlm_encode_ucs2_str_hdr (ctx , & msg -> target_name , & buffer ,
1066
+ ret = ntlm_encode_u16l_str_hdr (ctx , & msg -> target_name , & buffer ,
1067
1067
& data_offs , target_name , target_len );
1068
1068
} else {
1069
1069
ret = ntlm_encode_oem_str (& msg -> target_name , & buffer ,
@@ -1114,7 +1114,7 @@ int ntlm_decode_chal_msg(struct ntlm_ctx *ctx,
1114
1114
if ((flags & NTLMSSP_TARGET_TYPE_SERVER )
1115
1115
|| (flags & NTLMSSP_TARGET_TYPE_DOMAIN )) {
1116
1116
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1117
- ret = ntlm_decode_ucs2_str_hdr (ctx , & msg -> target_name , buffer ,
1117
+ ret = ntlm_decode_u16l_str_hdr (ctx , & msg -> target_name , buffer ,
1118
1118
payload_offs , & trg );
1119
1119
} else {
1120
1120
ret = ntlm_decode_oem_str (& msg -> target_name , buffer ,
@@ -1251,7 +1251,7 @@ int ntlm_encode_auth_msg(struct ntlm_ctx *ctx,
1251
1251
1252
1252
if (domain_name_len ) {
1253
1253
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1254
- ret = ntlm_encode_ucs2_str_hdr (ctx , & msg -> domain_name ,
1254
+ ret = ntlm_encode_u16l_str_hdr (ctx , & msg -> domain_name ,
1255
1255
& buffer , & data_offs ,
1256
1256
domain_name , domain_name_len );
1257
1257
} else {
@@ -1263,7 +1263,7 @@ int ntlm_encode_auth_msg(struct ntlm_ctx *ctx,
1263
1263
}
1264
1264
if (user_name_len ) {
1265
1265
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1266
- ret = ntlm_encode_ucs2_str_hdr (ctx , & msg -> user_name ,
1266
+ ret = ntlm_encode_u16l_str_hdr (ctx , & msg -> user_name ,
1267
1267
& buffer , & data_offs ,
1268
1268
user_name , user_name_len );
1269
1269
} else {
@@ -1275,7 +1275,7 @@ int ntlm_encode_auth_msg(struct ntlm_ctx *ctx,
1275
1275
}
1276
1276
if (workstation_len ) {
1277
1277
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1278
- ret = ntlm_encode_ucs2_str_hdr (ctx , & msg -> workstation ,
1278
+ ret = ntlm_encode_u16l_str_hdr (ctx , & msg -> workstation ,
1279
1279
& buffer , & data_offs ,
1280
1280
workstation , workstation_len );
1281
1281
} else {
@@ -1381,7 +1381,7 @@ int ntlm_decode_auth_msg(struct ntlm_ctx *ctx,
1381
1381
}
1382
1382
if (msg -> domain_name .len != 0 && domain_name ) {
1383
1383
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1384
- ret = ntlm_decode_ucs2_str_hdr (ctx , & msg -> domain_name , buffer ,
1384
+ ret = ntlm_decode_u16l_str_hdr (ctx , & msg -> domain_name , buffer ,
1385
1385
payload_offs , & dom );
1386
1386
} else {
1387
1387
ret = ntlm_decode_oem_str (& msg -> domain_name , buffer ,
@@ -1391,7 +1391,7 @@ int ntlm_decode_auth_msg(struct ntlm_ctx *ctx,
1391
1391
}
1392
1392
if (msg -> user_name .len != 0 && user_name ) {
1393
1393
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1394
- ret = ntlm_decode_ucs2_str_hdr (ctx , & msg -> user_name , buffer ,
1394
+ ret = ntlm_decode_u16l_str_hdr (ctx , & msg -> user_name , buffer ,
1395
1395
payload_offs , & usr );
1396
1396
} else {
1397
1397
ret = ntlm_decode_oem_str (& msg -> user_name , buffer ,
@@ -1401,7 +1401,7 @@ int ntlm_decode_auth_msg(struct ntlm_ctx *ctx,
1401
1401
}
1402
1402
if (msg -> workstation .len != 0 && workstation ) {
1403
1403
if (flags & NTLMSSP_NEGOTIATE_UNICODE ) {
1404
- ret = ntlm_decode_ucs2_str_hdr (ctx , & msg -> workstation , buffer ,
1404
+ ret = ntlm_decode_u16l_str_hdr (ctx , & msg -> workstation , buffer ,
1405
1405
payload_offs , & wks );
1406
1406
} else {
1407
1407
ret = ntlm_decode_oem_str (& msg -> workstation , buffer ,
0 commit comments