diff options
author | Jeremy Allison <jra@samba.org> | 2005-05-01 10:00:14 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:56:45 -0500 |
commit | 0483dd60ded1239d8a3ab46598e164416f7668b8 (patch) | |
tree | 25dc1031e677f26fe88c0388315a7cf09943d757 | |
parent | 431a28a3151f6cb8f9e1de769da11a22c379d9d8 (diff) | |
download | samba-0483dd60ded1239d8a3ab46598e164416f7668b8.tar.gz samba-0483dd60ded1239d8a3ab46598e164416f7668b8.tar.bz2 samba-0483dd60ded1239d8a3ab46598e164416f7668b8.zip |
r6550: Move function make_dir_struct from util to dir.c
Jeremy.
(This used to be commit 5b86e3dcdf31dec61449d2faede61d24c3a8d79f)
-rw-r--r-- | source3/lib/util.c | 34 | ||||
-rw-r--r-- | source3/smbd/dir.c | 34 |
2 files changed, 34 insertions, 34 deletions
diff --git a/source3/lib/util.c b/source3/lib/util.c index b0cd9aa9e7..f31bcef281 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -603,40 +603,6 @@ void unix_clean_name(char *s) trim_string(s,NULL,"/.."); } -/**************************************************************************** - Make a dir struct. -****************************************************************************/ - -void make_dir_struct(char *buf, const char *mask, const char *fname,SMB_OFF_T size,int mode,time_t date, BOOL uc) -{ - char *p; - pstring mask2; - - pstrcpy(mask2,mask); - - if ((mode & aDIR) != 0) - size = 0; - - memset(buf+1,' ',11); - if ((p = strchr_m(mask2,'.')) != NULL) { - *p = 0; - push_ascii(buf+1,mask2,8, 0); - push_ascii(buf+9,p+1,3, 0); - *p = '.'; - } else - push_ascii(buf+1,mask2,11, 0); - - memset(buf+21,'\0',DIR_STRUCT_SIZE-21); - SCVAL(buf,21,mode); - put_dos_date(buf,22,date); - SSVAL(buf,26,size & 0xFFFF); - SSVAL(buf,28,(size >> 16)&0xFFFF); - /* We only uppercase if FLAGS2_LONG_PATH_COMPONENTS is zero in the input buf. - Strange, but verified on W2K3. Needed for OS/2. JRA. */ - push_ascii(buf+30,fname,12, uc ? STR_UPPER : 0); - DEBUG(8,("put name [%s] from [%s] into dir struct\n",buf+30, fname)); -} - /******************************************************************* Close the low 3 fd's and open dev/null in their place. ********************************************************************/ diff --git a/source3/smbd/dir.c b/source3/smbd/dir.c index 3c93c188ff..95a5903c14 100644 --- a/source3/smbd/dir.c +++ b/source3/smbd/dir.c @@ -64,6 +64,40 @@ static int dirhandles_open = 0; #define INVALID_DPTR_KEY (-3) /**************************************************************************** + Make a dir struct. +****************************************************************************/ + +void make_dir_struct(char *buf, const char *mask, const char *fname,SMB_OFF_T size,int mode,time_t date, BOOL uc) +{ + char *p; + pstring mask2; + + pstrcpy(mask2,mask); + + if ((mode & aDIR) != 0) + size = 0; + + memset(buf+1,' ',11); + if ((p = strchr_m(mask2,'.')) != NULL) { + *p = 0; + push_ascii(buf+1,mask2,8, 0); + push_ascii(buf+9,p+1,3, 0); + *p = '.'; + } else + push_ascii(buf+1,mask2,11, 0); + + memset(buf+21,'\0',DIR_STRUCT_SIZE-21); + SCVAL(buf,21,mode); + put_dos_date(buf,22,date); + SSVAL(buf,26,size & 0xFFFF); + SSVAL(buf,28,(size >> 16)&0xFFFF); + /* We only uppercase if FLAGS2_LONG_PATH_COMPONENTS is zero in the input buf. + Strange, but verified on W2K3. Needed for OS/2. JRA. */ + push_ascii(buf+30,fname,12, uc ? STR_UPPER : 0); + DEBUG(8,("put name [%s] from [%s] into dir struct\n",buf+30, fname)); +} + +/**************************************************************************** Initialise the dir bitmap. ****************************************************************************/ |