summaryrefslogtreecommitdiffstats
path: root/source/msdfs
diff options
context:
space:
mode:
authorTim Potter <tpot@samba.org>2001-09-12 12:20:14 +0000
committerTim Potter <tpot@samba.org>2001-09-12 12:20:14 +0000
commitec7296d6e9b5b61bac778c2093ee0cd0e23a2344 (patch)
tree7567c390425295934f7fd5d945a93f64f72e65f0 /source/msdfs
parent42417a425b524bc74360fdf6f1a16bfad38b9818 (diff)
downloadsamba-ec7296d6e9b5b61bac778c2093ee0cd0e23a2344.tar.gz
samba-ec7296d6e9b5b61bac778c2093ee0cd0e23a2344.tar.xz
samba-ec7296d6e9b5b61bac778c2093ee0cd0e23a2344.zip
Converted msdfs referral server code to use rpcstr_push() functions. Still
doesn't work though. )-:
Diffstat (limited to 'source/msdfs')
-rw-r--r--source/msdfs/msdfs.c22
1 files changed, 10 insertions, 12 deletions
diff --git a/source/msdfs/msdfs.c b/source/msdfs/msdfs.c
index b2098005c0f..8417474ed2d 100644
--- a/source/msdfs/msdfs.c
+++ b/source/msdfs/msdfs.c
@@ -368,9 +368,9 @@ static int setup_ver2_dfs_referral(char* pathname, char** ppdata,
DEBUG(10,("setting up version2 referral\nRequested path:\n"));
-#if 0
- requestedpathlen = (dos_struni2(uni_requestedpath,pathname,512)+1)*2;
-#endif
+ requestedpathlen = rpcstr_push(uni_requestedpath, pathname, -1,
+ STR_TERMINATE);
+
dump_data(10,uni_requestedpath,requestedpathlen);
DEBUG(10,("ref count = %u\n",junction->referral_count));
@@ -434,9 +434,8 @@ static int setup_ver2_dfs_referral(char* pathname, char** ppdata,
SSVAL(pdata,offset+16,uni_reqpathoffset1-offset);
SSVAL(pdata,offset+18,uni_reqpathoffset2-offset);
/* copy referred path into current offset */
-#if 0
- unilen = (dos_struni2(pdata+uni_curroffset,ref->alternate_path,512) +1)*2;
-#endif
+ unilen = rpcstr_push(pdata+uni_curroffset, ref->alternate_path,
+ -1, STR_UNICODE);
SSVAL(pdata,offset+20,uni_curroffset-offset);
uni_curroffset += unilen;
@@ -464,9 +463,8 @@ static int setup_ver3_dfs_referral(char* pathname, char** ppdata,
DEBUG(10,("setting up version3 referral\n"));
-#if 0
- reqpathlen = (dos_struni2(uni_reqpath,pathname,512)+1)*2;
-#endif
+ reqpathlen = rpcstr_push(uni_reqpath, pathname, -1, STR_TERMINATE);
+
dump_data(10,uni_reqpath,reqpathlen);
uni_reqpathoffset1 = REFERRAL_HEADER_SIZE + VERSION3_REFERRAL_SIZE * junction->referral_count;
@@ -515,9 +513,9 @@ static int setup_ver3_dfs_referral(char* pathname, char** ppdata,
SSVAL(pdata,offset+12,uni_reqpathoffset1-offset);
SSVAL(pdata,offset+14,uni_reqpathoffset2-offset);
/* copy referred path into current offset */
-#if 0
- unilen = (dos_struni2(pdata+uni_curroffset,ref->alternate_path,512) +1)*2;
-#endif
+
+ unilen = rpcstr_push(pdata+uni_curroffset, ref->alternate_path,
+ -1, STR_UNICODE);
SSVAL(pdata,offset+16,uni_curroffset-offset);
/* copy 0x10 bytes of 00's in the ServiceSite GUID */
memset(pdata+offset+18,'\0',16);