diff options
author | Jean-François Micouleau <jfm@samba.org> | 2000-07-25 13:15:16 +0000 |
---|---|---|
committer | Jean-François Micouleau <jfm@samba.org> | 2000-07-25 13:15:16 +0000 |
commit | ac0a145acc0953a6f362497abbf4dfe70aa522a6 (patch) | |
tree | c963caa1e59bd80b31c4bfc65f2760fcfaedefcb /source/smbd/reply.c | |
parent | dcf3249bb9fef2a05b376e9c8c1a0a7d602d8a2e (diff) | |
download | samba-ac0a145acc0953a6f362497abbf4dfe70aa522a6.tar.gz samba-ac0a145acc0953a6f362497abbf4dfe70aa522a6.tar.xz samba-ac0a145acc0953a6f362497abbf4dfe70aa522a6.zip |
A rather big change set ! (listed in no particular order)
- changed the default forms flag to 2
- all short architecture name are uppercased
- get_short_archi() is now case unsensitive
- the drivers TDB is indexed by archi/version/name
- implemented code to move drivers from the upload area to the download
area. Someone else need to look at that code.
- don't return anymore a default driver if it doesn't exist in the TDB.
Instead return an error.
- cleaned prs_unistr.
- #ifdef out jeremy's new SD parsing in printer_info_2
- removed the unused MANGLE_CODE
- #ifdef out the security checking in update_printer() as it doesn't work
for me.
Zap your ntdrivers.tdb, it won't work anymore.
J.F.
Diffstat (limited to 'source/smbd/reply.c')
-rw-r--r-- | source/smbd/reply.c | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/source/smbd/reply.c b/source/smbd/reply.c index 00a0ce3c4a0..19af1fdc3d3 100644 --- a/source/smbd/reply.c +++ b/source/smbd/reply.c @@ -3101,15 +3101,14 @@ int reply_printwrite(connection_struct *conn, char *inbuf,char *outbuf, int dum_ /**************************************************************************** - reply to a mkdir + The guts of the mkdir command, split out so it may be called by the NT SMB + code. ****************************************************************************/ -int reply_mkdir(connection_struct *conn, char *inbuf,char *outbuf, int dum_size, int dum_buffsize) +int mkdir_internal(connection_struct *conn, char *inbuf, char *outbuf, pstring directory) { - pstring directory; - int outsize,ret= -1; BOOL bad_path = False; - - pstrcpy(directory,smb_buf(inbuf) + 1); + int ret= -1; + unix_convert(directory,conn,0,&bad_path,NULL); if (check_name(directory, conn)) @@ -3125,10 +3124,23 @@ int reply_mkdir(connection_struct *conn, char *inbuf,char *outbuf, int dum_size, } return(UNIXERROR(ERRDOS,ERRnoaccess)); } +} - outsize = set_message(outbuf,0,0,True); +/**************************************************************************** + reply to a mkdir +****************************************************************************/ +int reply_mkdir(connection_struct *conn, char *inbuf,char *outbuf, int dum_size, int dum_buffsize) +{ + pstring directory; + int outsize; + + pstrcpy(directory,smb_buf(inbuf) + 1); + + outsize=mkdir_internal(conn, inbuf, outbuf, directory); + if(outsize == 0) + outsize = set_message(outbuf,0,0,True); - DEBUG( 3, ( "mkdir %s ret=%d\n", directory, ret ) ); + DEBUG( 3, ( "mkdir %s ret=%d\n", directory, outsize ) ); return(outsize); } |