mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-12 13:01:09 +03:00
Make fchown() an overrideable system call in os_unix.c.
FossilOrigin-Name: 98efac9630ca96ba0497c8e206dc5022612ff381
This commit is contained in:
16
manifest
16
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Cleanup\ssome\sdirectories\sand\sfiles\sleft\sby\sthe\sMinGW\sbuild,\seven\swhen\susing\sthe\sMSVC\sMakefile.
|
C Make\sfchown()\san\soverrideable\ssystem\scall\sin\sos_unix.c.
|
||||||
D 2012-02-11T22:19:26.264
|
D 2012-02-11T23:55:15.455
|
||||||
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
|
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
|
||||||
F Makefile.in 3f79a373e57c3b92dabf76f40b065e719d31ac34
|
F Makefile.in 3f79a373e57c3b92dabf76f40b065e719d31ac34
|
||||||
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
|
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
|
||||||
@@ -166,7 +166,7 @@ F src/os.c e1acdc09ff3ac2412945cca9766e2dcf4675f31c
|
|||||||
F src/os.h 59beba555b65a450bd1d804220532971d4299f60
|
F src/os.h 59beba555b65a450bd1d804220532971d4299f60
|
||||||
F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04
|
F src/os_common.h 92815ed65f805560b66166e3583470ff94478f04
|
||||||
F src/os_os2.c 4a75888ba3dfc820ad5e8177025972d74d7f2440
|
F src/os_os2.c 4a75888ba3dfc820ad5e8177025972d74d7f2440
|
||||||
F src/os_unix.c 3dd0399fe024df37af2980c99f1a3c1d3cc6a782
|
F src/os_unix.c 55fbf23bb9807412a6ec95c5cc489222e56a4d58
|
||||||
F src/os_win.c 5ac061ae1326a71500cee578ed0fd9113b4f6a37
|
F src/os_win.c 5ac061ae1326a71500cee578ed0fd9113b4f6a37
|
||||||
F src/pager.c 2d892f7b901a8867a33bc21742086165a3a99af8
|
F src/pager.c 2d892f7b901a8867a33bc21742086165a3a99af8
|
||||||
F src/pager.h a435da8421dc7844b7f9c7f37b636c160c50208a
|
F src/pager.h a435da8421dc7844b7f9c7f37b636c160c50208a
|
||||||
@@ -709,7 +709,7 @@ F test/subselect.test d24fd8757daf97dafd2e889c73ea4c4272dcf4e4
|
|||||||
F test/substr.test 18f57c4ca8a598805c4d64e304c418734d843c1a
|
F test/substr.test 18f57c4ca8a598805c4d64e304c418734d843c1a
|
||||||
F test/superlock.test 1cde669f68d2dd37d6c9bd35eee1d95491ae3fc2
|
F test/superlock.test 1cde669f68d2dd37d6c9bd35eee1d95491ae3fc2
|
||||||
F test/sync.test a34cd43e98b7fb84eabbf38f7ed8f7349b3f3d85
|
F test/sync.test a34cd43e98b7fb84eabbf38f7ed8f7349b3f3d85
|
||||||
F test/syscall.test 265cda616f56a297406728ee1e74c9b4a93aa6dd
|
F test/syscall.test 8a1bd9575ea1e8bdc0513fc5be7753fa4c3c04fb
|
||||||
F test/sysfault.test c79441d88d23696fbec7b147dba98d42a04f523f
|
F test/sysfault.test c79441d88d23696fbec7b147dba98d42a04f523f
|
||||||
F test/table.test a59d985ca366e39b17b175f387f9d5db5a18d4e2
|
F test/table.test a59d985ca366e39b17b175f387f9d5db5a18d4e2
|
||||||
F test/tableapi.test 2674633fa95d80da917571ebdd759a14d9819126
|
F test/tableapi.test 2674633fa95d80da917571ebdd759a14d9819126
|
||||||
@@ -989,7 +989,7 @@ F tool/tostr.awk e75472c2f98dd76e06b8c9c1367f4ab07e122d06
|
|||||||
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
|
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
|
||||||
F tool/warnings-clang.sh 9f406d66e750e8ac031c63a9ef3248aaa347ef2a
|
F tool/warnings-clang.sh 9f406d66e750e8ac031c63a9ef3248aaa347ef2a
|
||||||
F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
|
F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381
|
||||||
P 90e73dc3682680847238e625d415b27fa9c59ba8
|
P 3ab89e255d1f2f8004d3256515ac43f74e57f39b
|
||||||
R 6d21c0cf3bea5fa0f98de70e56cbbd21
|
R c7e080a7342ae25512a1d89fb1e6a36a
|
||||||
U mistachkin
|
U drh
|
||||||
Z df222febfd73cd10d8b058c8ec5473c1
|
Z 57dd073c92c9b4505dfd0c4c6af07210
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
3ab89e255d1f2f8004d3256515ac43f74e57f39b
|
98efac9630ca96ba0497c8e206dc5022612ff381
|
||||||
@@ -419,6 +419,9 @@ static struct unix_syscall {
|
|||||||
{ "rmdir", (sqlite3_syscall_ptr)rmdir, 0 },
|
{ "rmdir", (sqlite3_syscall_ptr)rmdir, 0 },
|
||||||
#define osRmdir ((int(*)(const char*))aSyscall[19].pCurrent)
|
#define osRmdir ((int(*)(const char*))aSyscall[19].pCurrent)
|
||||||
|
|
||||||
|
{ "fchown", (sqlite3_syscall_ptr)fchown, 0 },
|
||||||
|
#define osFchown ((int(*)(const char*,uid_t,gid_t))aSyscall[20].pCurrent)
|
||||||
|
|
||||||
}; /* End of the overrideable system calls */
|
}; /* End of the overrideable system calls */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -3913,7 +3916,7 @@ static int unixOpenSharedMemory(unixFile *pDbFd){
|
|||||||
** if(){..} and the UNIXFILE_CHOWN flag are purely to silence compiler
|
** if(){..} and the UNIXFILE_CHOWN flag are purely to silence compiler
|
||||||
** warnings.
|
** warnings.
|
||||||
*/
|
*/
|
||||||
if( fchown(pShmNode->h, sStat.st_uid, sStat.st_gid)==0 ){
|
if( osFchown(pShmNode->h, sStat.st_uid, sStat.st_gid)==0 ){
|
||||||
pDbFd->ctrlFlags |= UNIXFILE_CHOWN;
|
pDbFd->ctrlFlags |= UNIXFILE_CHOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5129,7 +5132,7 @@ static int unixOpen(
|
|||||||
** warnings from gcc.
|
** warnings from gcc.
|
||||||
*/
|
*/
|
||||||
if( flags & (SQLITE_OPEN_WAL|SQLITE_OPEN_MAIN_JOURNAL) ){
|
if( flags & (SQLITE_OPEN_WAL|SQLITE_OPEN_MAIN_JOURNAL) ){
|
||||||
if( fchown(fd, uid, gid)==0 ){ p->ctrlFlags |= UNIXFILE_CHOWN; }
|
if( osFchown(fd, uid, gid)==0 ){ p->ctrlFlags |= UNIXFILE_CHOWN; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
assert( fd>=0 );
|
assert( fd>=0 );
|
||||||
@@ -6839,7 +6842,7 @@ int sqlite3_os_init(void){
|
|||||||
|
|
||||||
/* Double-check that the aSyscall[] array has been constructed
|
/* Double-check that the aSyscall[] array has been constructed
|
||||||
** correctly. See ticket [bb3a86e890c8e96ab] */
|
** correctly. See ticket [bb3a86e890c8e96ab] */
|
||||||
assert( ArraySize(aSyscall)==20 );
|
assert( ArraySize(aSyscall)==21 );
|
||||||
|
|
||||||
/* Register all VFSes defined in the aVfs[] array */
|
/* Register all VFSes defined in the aVfs[] array */
|
||||||
for(i=0; i<(sizeof(aVfs)/sizeof(sqlite3_vfs)); i++){
|
for(i=0; i<(sizeof(aVfs)/sizeof(sqlite3_vfs)); i++){
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ foreach s {
|
|||||||
open close access getcwd stat fstat ftruncate
|
open close access getcwd stat fstat ftruncate
|
||||||
fcntl read pread write pwrite fchmod fallocate
|
fcntl read pread write pwrite fchmod fallocate
|
||||||
pread64 pwrite64 unlink openDirectory mkdir rmdir
|
pread64 pwrite64 unlink openDirectory mkdir rmdir
|
||||||
statvfs
|
statvfs fchown
|
||||||
} {
|
} {
|
||||||
if {[test_syscall exists $s]} {lappend syscall_list $s}
|
if {[test_syscall exists $s]} {lappend syscall_list $s}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user