summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
Diffstat (limited to 'source4')
-rw-r--r--source4/auth/ntlmssp/ntlmssp_parse.c10
-rw-r--r--source4/auth/ntlmssp/ntlmssp_server.c11
2 files changed, 8 insertions, 13 deletions
diff --git a/source4/auth/ntlmssp/ntlmssp_parse.c b/source4/auth/ntlmssp/ntlmssp_parse.c
index 42546cb130..fa839b43d8 100644
--- a/source4/auth/ntlmssp/ntlmssp_parse.c
+++ b/source4/auth/ntlmssp/ntlmssp_parse.c
@@ -21,7 +21,6 @@
*/
#include "includes.h"
-#include "pstring.h"
/*
this is a tiny msrpc packet generator. I am only using this to
@@ -210,7 +209,7 @@ BOOL msrpc_parse(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob,
uint16_t len1, len2;
uint32_t ptr;
uint32_t *v;
- pstring p;
+ char *p;
va_start(ap, format);
for (i=0; format[i]; i++) {
@@ -237,13 +236,10 @@ BOOL msrpc_parse(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob,
return False;
if (0 < len1) {
- pull_string(p, blob->data + ptr, sizeof(p),
- len1,
- STR_UNICODE|STR_NOALIGN);
- (*ps) = talloc_strdup(mem_ctx, p);
- if (!(*ps)) {
+ if (convert_string_talloc(mem_ctx, CH_UTF16, CH_UNIX, blob->data + ptr, len1, (void **)&p) < 0) {
return False;
}
+ (*ps) = p;
} else {
(*ps) = "";
}
diff --git a/source4/auth/ntlmssp/ntlmssp_server.c b/source4/auth/ntlmssp/ntlmssp_server.c
index 9f106da37c..c448402a55 100644
--- a/source4/auth/ntlmssp/ntlmssp_server.c
+++ b/source4/auth/ntlmssp/ntlmssp_server.c
@@ -26,7 +26,6 @@
#include "auth/auth.h"
#include "auth/ntlmssp/ntlmssp.h"
#include "lib/crypto/crypto.h"
-#include "pstring.h"
#include "system/filesys.h"
/**
@@ -107,7 +106,7 @@ static const char *ntlmssp_target_name(struct gensec_ntlmssp_state *gensec_ntlms
*/
static BOOL get_myfullname(char *my_name)
{
- pstring hostname;
+ char hostname[HOST_NAME_MAX];
*hostname = 0;
@@ -121,13 +120,13 @@ static BOOL get_myfullname(char *my_name)
hostname[sizeof(hostname)-1] = '\0';
if (my_name)
- fstrcpy(my_name, hostname);
+ strncpy(my_name, hostname, sizeof(hostname));
return True;
}
static BOOL get_mydomname(char *my_domname)
{
- pstring hostname;
+ char hostname[HOST_NAME_MAX];
char *p;
/* arrgh! relies on full name in system */
@@ -150,7 +149,7 @@ static BOOL get_mydomname(char *my_domname)
p++;
if (my_domname)
- fstrcpy(my_domname, p);
+ strncpy(my_domname, p, sizeof(hostname));
return True;
}
@@ -173,7 +172,7 @@ NTSTATUS ntlmssp_server_negotiate(struct gensec_security *gensec_security,
{
struct gensec_ntlmssp_state *gensec_ntlmssp_state = gensec_security->private_data;
DATA_BLOB struct_blob;
- fstring dnsname, dnsdomname;
+ char dnsname[HOST_NAME_MAX], dnsdomname[HOST_NAME_MAX];
uint32_t neg_flags = 0;
uint32_t ntlmssp_command, chal_flags;
char *cliname=NULL, *domname=NULL;