summaryrefslogtreecommitdiff
path: root/usr/src/lib/smbsrv/libsmb/common/smb_auth.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/lib/smbsrv/libsmb/common/smb_auth.c')
-rw-r--r--usr/src/lib/smbsrv/libsmb/common/smb_auth.c38
1 files changed, 17 insertions, 21 deletions
diff --git a/usr/src/lib/smbsrv/libsmb/common/smb_auth.c b/usr/src/lib/smbsrv/libsmb/common/smb_auth.c
index 161fcd4d27..b53d109ed7 100644
--- a/usr/src/lib/smbsrv/libsmb/common/smb_auth.c
+++ b/usr/src/lib/smbsrv/libsmb/common/smb_auth.c
@@ -25,9 +25,7 @@
#include <strings.h>
#include <stdlib.h>
-#include <smbsrv/codepage.h>
-#include <smbsrv/oem.h>
-#include <smbsrv/ctype.h>
+#include <smbsrv/string.h>
#include <smbsrv/libsmb.h>
extern void randomize(char *data, unsigned len);
@@ -40,24 +38,22 @@ static uint64_t unix_micro_to_nt_time(struct timeval *unix_time);
* Returns the length of dst in bytes.
*/
int
-smb_auth_qnd_unicode(mts_wchar_t *dst, const char *src, int length)
+smb_auth_qnd_unicode(smb_wchar_t *dst, const char *src, int length)
{
int i;
-
- unsigned int cpid = oem_get_telnet_cpid();
unsigned int count;
- mts_wchar_t new_char;
+ smb_wchar_t new_char;
- if ((count = oemstounicodes(dst, src, length, cpid)) == 0) {
+ if ((count = oemtoucs(dst, src, length, OEM_CPG_1252)) == 0) {
for (i = 0; i < length; ++i) {
- new_char = (mts_wchar_t)src[i] & 0xff;
+ new_char = (smb_wchar_t)src[i] & 0xff;
dst[i] = LE_IN16(&new_char);
}
dst[i] = 0;
count = length;
}
- return (count * sizeof (mts_wchar_t));
+ return (count * sizeof (smb_wchar_t));
}
/*
@@ -75,8 +71,8 @@ smb_auth_lmupr(unsigned char *lm_pwd)
int i;
for (i = 0; (*p) && (i < SMBAUTH_LM_PWD_SZ); i++) {
- if (mts_isascii(*p)) {
- *p = codepage_toupper(*p);
+ if (smb_isascii(*p)) {
+ *p = smb_toupper(*p);
p++;
}
}
@@ -148,7 +144,7 @@ smb_auth_lm_response(unsigned char *hash,
int
smb_auth_ntlm_hash(const char *password, unsigned char *hash)
{
- mts_wchar_t *unicode_password;
+ smb_wchar_t *unicode_password;
int length;
int rc;
@@ -156,8 +152,8 @@ smb_auth_ntlm_hash(const char *password, unsigned char *hash)
return (SMBAUTH_FAILURE);
length = strlen(password);
- unicode_password = (mts_wchar_t *)
- malloc((length + 1) * sizeof (mts_wchar_t));
+ unicode_password = (smb_wchar_t *)
+ malloc((length + 1) * sizeof (smb_wchar_t));
if (unicode_password == NULL)
return (SMBAUTH_FAILURE);
@@ -290,7 +286,7 @@ smb_auth_ntlmv2_hash(unsigned char *ntlm_hash,
char *ntdomain,
unsigned char *ntlmv2_hash)
{
- mts_wchar_t *data;
+ smb_wchar_t *data;
int data_len;
unsigned char *buf;
int rc;
@@ -298,7 +294,7 @@ smb_auth_ntlmv2_hash(unsigned char *ntlm_hash,
if (username == NULL || ntdomain == NULL)
return (SMBAUTH_FAILURE);
- (void) utf8_strupr(username);
+ (void) smb_strupr(username);
data_len = strlen(username) + strlen(ntdomain);
buf = (unsigned char *)malloc((data_len + 1) * sizeof (char));
@@ -306,7 +302,7 @@ smb_auth_ntlmv2_hash(unsigned char *ntlm_hash,
return (SMBAUTH_FAILURE);
(void) snprintf((char *)buf, data_len + 1, "%s%s", username, ntdomain);
- data = (mts_wchar_t *)malloc((data_len + 1) * sizeof (mts_wchar_t));
+ data = (smb_wchar_t *)malloc((data_len + 1) * sizeof (smb_wchar_t));
if (data == NULL) {
free(buf);
return (SMBAUTH_FAILURE);
@@ -423,7 +419,7 @@ smb_auth_set_info(char *username,
if ((uppercase_dom = strdup(domain)) == NULL)
return (-1);
- (void) utf8_strupr(uppercase_dom);
+ (void) smb_strupr(uppercase_dom);
if (smb_auth_ntlmv2_hash(auth->hash, username,
uppercase_dom, auth->hash_v2) != SMBAUTH_SUCCESS) {
@@ -570,7 +566,7 @@ smb_ntlmv2_password_ok(
dest[0] = domain;
if ((dest[1] = strdup(domain)) == NULL)
return (B_FALSE);
- (void) utf8_strupr(dest[1]);
+ (void) smb_strupr(dest[1]);
dest[2] = "";
/*
@@ -642,7 +638,7 @@ smb_lmv2_password_ok(
dest[0] = domain;
if ((dest[1] = strdup(domain)) == NULL)
return (B_FALSE);
- (void) utf8_strupr(dest[1]);
+ (void) smb_strupr(dest[1]);
dest[2] = "";
/*