summaryrefslogtreecommitdiffstats
path: root/source/smbd/nttrans.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>1998-09-01 20:11:54 +0000
committerJeremy Allison <jra@samba.org>1998-09-01 20:11:54 +0000
commit28aa182dbffaa4ffd86047e608400de4b26e80eb (patch)
tree789ac30eed5ef242b4cd9ffd6cbb84a7c640e0f4 /source/smbd/nttrans.c
parent8bd2cf0eb7533c3ec2d5767163ffdaf20b01bbff (diff)
downloadsamba-28aa182dbffaa4ffd86047e608400de4b26e80eb.tar.gz
samba-28aa182dbffaa4ffd86047e608400de4b26e80eb.tar.xz
samba-28aa182dbffaa4ffd86047e608400de4b26e80eb.zip
More abstraction of file system data types, to move to a 64
bit file interface for the NT SMB's. Created a new define, SMB_STRUCT_STAT that currently is defined to be struct stat - this wil change to a user defined type containing 64 bit info when the correct wrappers are written for 64 bit stat(), fstat() and lstat() calls. Also changed all sys_xxxx() calls that were previously just wrappers to the same call prefixed by a dos_to_unix() call into dos_xxxx() calls. This makes it explicit when a pathname translation is being done, and when it is not. Now, all sys_xxx() calls are meant to be wrappers to mask OS differences, and not silently converting filenames on the fly. Jeremy.
Diffstat (limited to 'source/smbd/nttrans.c')
-rw-r--r--source/smbd/nttrans.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/source/smbd/nttrans.c b/source/smbd/nttrans.c
index fbcc19e77d8..9e507aa4d25 100644
--- a/source/smbd/nttrans.c
+++ b/source/smbd/nttrans.c
@@ -416,7 +416,7 @@ int reply_ntcreate_and_X(connection_struct *conn,
int unixmode, pnum = -1;
int fmode=0,mtime=0,rmode=0;
off_t file_len = 0;
- struct stat sbuf;
+ SMB_STRUCT_STAT sbuf;
int smb_action = 0;
BOOL bad_path = False;
files_struct *fsp=NULL;
@@ -596,7 +596,7 @@ int reply_ntcreate_and_X(connection_struct *conn,
}
if(fsp->is_directory) {
- if(sys_stat(fsp->fsp_name, &sbuf) != 0) {
+ if(dos_stat(fsp->fsp_name, &sbuf) != 0) {
close_directory(fsp);
restore_case_semantics(file_attributes);
return(ERROR(ERRDOS,ERRnoaccess));
@@ -701,7 +701,7 @@ static int call_nt_transact_create(connection_struct *conn,
int unixmode, pnum = -1;
int fmode=0,mtime=0,rmode=0;
off_t file_len = 0;
- struct stat sbuf;
+ SMB_STRUCT_STAT sbuf;
int smb_action = 0;
BOOL bad_path = False;
files_struct *fsp = NULL;
@@ -1084,7 +1084,7 @@ void process_pending_change_notify_queue(time_t t)
*/
while((cnbp != NULL) && (cnbp->next_check_time <= t)) {
- struct stat st;
+ SMB_STRUCT_STAT st;
files_struct *fsp = cnbp->fsp;
connection_struct *conn = cnbp->conn;
uint16 vuid = (lp_security() == SEC_SHARE) ? UID_FIELD_INVALID :
@@ -1121,7 +1121,7 @@ void process_pending_change_notify_queue(time_t t)
continue;
}
- if(sys_stat(fsp->fsp_name, &st) < 0) {
+ if(dos_stat(fsp->fsp_name, &st) < 0) {
DEBUG(0,("process_pending_change_notify_queue: Unable to stat directory %s. \
Error was %s.\n", fsp->fsp_name, strerror(errno) ));
/*
@@ -1171,7 +1171,7 @@ static int call_nt_transact_notify_change(connection_struct *conn,
char *setup = *ppsetup;
files_struct *fsp;
change_notify_buf *cnbp;
- struct stat st;
+ SMB_STRUCT_STAT st;
fsp = file_fsp(setup,4);
@@ -1200,7 +1200,7 @@ static int call_nt_transact_notify_change(connection_struct *conn,
* Store the current timestamp on the directory we are monitoring.
*/
- if(sys_stat(fsp->fsp_name, &st) < 0) {
+ if(dos_stat(fsp->fsp_name, &st) < 0) {
DEBUG(0,("call_nt_transact_notify_change: Unable to stat name = %s. \
Error was %s\n", fsp->fsp_name, strerror(errno) ));
free((char *)cnbp);