summaryrefslogtreecommitdiff
path: root/source3/lib/system.c
AgeCommit message (Collapse)AuthorFilesLines
2002-06-15Add back sys_getpwnam() and freinds to the system.c interface, but don'tAndrew Bartlett1-0/+24
use the silly cache any more. Also add group functions and fix a few callers. Andrew Bartlett (This used to be commit 41d4b94077c118ecde2bf8792b9bb7ab71c6403e)
2002-05-22Add a bit more const, and kill of (finally!) sys_getpwnam and sys_getpwuid.Andrew Bartlett1-109/+1
These might be reimplmented as simple pass-through functions, but all users really should be doing 'getpwnam_alloc' or 'getpwuid_alloc' to ensure that there are not shared static buffers. I don't beleive we actually need a getpw*() cache inside samba - if we do then I think we should look at our code design first. (some of these changes are for platforms I don't have access to, but they look sane) Andrew Bartlett (This used to be commit 9d8431b04f41dceffe4c45cc969472ee59f7282f)
2002-04-24patch from Alexander Bokovoy needed for dlopen on bsd systemsAndrew Tridgell1-4/+4
(This used to be commit 38fd99e84176106ed700f637e9292d2a4c1385b4)
2002-04-19We cannot set errno=0 in any of the wrapper calls as this breaks UNIX errorJeremy Allison1-7/+0
returns to the client. Jeremy. (This used to be commit 1d66e53a64ec2878293e6d74a852b736ddab8f21)
2002-04-19Fix different args to sys_fcntl without going varargs....Jeremy Allison1-1/+16
Jeremy. (This used to be commit 65742067e07195048edcee46dae95a58a4a50950)
2002-04-19Added sys_fcntl (not to be used everywhere). Added sys_read/sys_writeJeremy Allison1-0/+15
for transfer_file. Jeremy. (This used to be commit c7ff521bab838c070931f2b0ece4be3371fbcdbf)
2002-04-19Fixed sendto in oplock code.Jeremy Allison1-0/+15
Jeremy. (This used to be commit 64974fa334fd757ff5cfd1bd32d7300bf8a6208c)
2002-04-19Fix send and recvfrom.Jeremy Allison1-1/+16
Jeremy. (This used to be commit 8cbc24c3bd0e2d2349625c3b5d2e12ac092ec5a8)
2002-04-19First cut at fix for the EINTR problem... More needs to be done I think.Jeremy Allison1-0/+45
Jeremy. (This used to be commit 48475a7a697242b9fd7b1aec24389afb112569c4)
2002-03-27Added sys_adminlog() system for info the appliance admins reallyJeremy Allison1-0/+28
need to know about. Different from the DEBUG system. Jeremy. (This used to be commit 74eac41c681f92a6da0ae2167f031e021862e0d8)
2002-03-27Removed HAVE_LIBDL from most places (except system.c). Added checks forJeremy Allison1-4/+4
dlopen & friends into configure.in. This should help building on *BSD where dl*** calls are in libc. Jeremy (This used to be commit ac1baba35d7a399bf800ced49a4384e39955e3eb)
2002-03-19Sync up vfs changes from 2.2.x.Jeremy Allison1-0/+15
Jeremy. (This used to be commit ad1e858d8e72adf924ff435eab8da3e60842e2e6)
2002-01-30Removed version number from file header.Tim Potter1-2/+1
Changed "SMB/Netbios" to "SMB/CIFS" in file header. (This used to be commit 6a58c9bd06d0d7502a24bf5ce5a2faf0a146edfa)
2002-01-10Getting ready to add UNIX extensions in HEAD also.Jeremy Allison1-184/+392
Jeremy (This used to be commit 6210d4aa196c944e47076e316980f76ac9c6b02d)
2001-10-02Removed 'extern int DEBUGLEVEL' as it is now in the smb.h header.Tim Potter1-2/+0
(This used to be commit 2d0922b0eabfdc0aaf1d0797482fef47ed7fde8e)
2001-09-17move to SAFE_FREE()Simo Sorce1-10/+8
(This used to be commit 60e907b7e8e1c008463a88ed2b076344278986ef)
2001-07-06Wrapped dlerror() in the same way as the other dlxxx() calls.Jeremy Allison1-0/+9
Jeremy. (This used to be commit ed5a1f70c6d155788b62e9e6e8c5d97a5ca0858d)
2001-07-04strchr and strrchr are macros when compiling with optimisation in gcc, so we ↵Andrew Tridgell1-2/+2
can't redefine them. damn. (This used to be commit c41fc06376d1a2b83690612304e85010b5e5f3cf)
2001-07-04The big character set handling changeover!Andrew Tridgell1-170/+0
This commit gets rid of all our old codepage handling and replaces it with iconv. All internal strings in Samba are now in "unix" charset, which may be multi-byte. See internals.doc and my posting to samba-technical for a more complete explanation. (This used to be commit debb471267960e56005a741817ebd227ecfc512a)
2001-06-29Ensured all the system calls in msdfs.c go through the vfs layer.Jeremy Allison1-0/+28
Added vfs calls to symlink() and readlink() with appropriate configure checks. Jeremy. (This used to be commit c24e6b41ea60ab4bac2fcd19da947851d6df3c7c)
2001-04-30Fixed password entry caching bug pointed out by Elrond.Jeremy Allison1-14/+25
Jeremy. (This used to be commit dc31b47deda188cb88288a8f33dc09faed9b2c41)
2001-03-23Sync up with 2.2 ACL code.Jeremy Allison1-4/+0
Jeremy. (This used to be commit 5b9a88c2d0da3479f91131f66ff741e88f9760ee)
2001-03-19Added sys_dlopen/sys_dlsym/sys_dlclose.Jeremy Allison1-0/+31
Jeremy. (This used to be commit 49f0e7e7143f82bce9dfd8b06e9e515bc0869ab7)
2001-03-17removed useless debug msgAndrew Tridgell1-3/+0
(This used to be commit 348ebe30d047d69968df0f33b227e52b5bbabafe)
2001-03-17lib/system.c (Finally) fixed all insure errors in password caching code. We ↵Jeremy Allison1-56/+53
can't stop libc routines from calling getpwXXX functions, so caching a pointer to them is impossible. This new code now makes two copies of the returned struct passwd struct - one used as a cache, one returned to allow the caller to modify. When doing a lookup we compare against the cached copy. Code is now easier to understand also. smbd/posix_acls.c: If we move the head of the linked list, remember to pass a reference to that pointer..... Jeremy. (This used to be commit af364b93d92f70aa52195c46d3cc516830752609)
2001-02-13change pstrcpy() in setup_pwret() to fstrcpy() since we areGerald Carter1-2/+2
using fstrings. Spotted by Elrond. Thanks :-) jerry (This used to be commit a55a4fea9728550c4d28b05910c0b7d5080714b3)
2001-01-31lib/system.c: Fix for pw caching.Jeremy Allison1-12/+37
srv_samr.c: Fix for pw caching. smbd/nttrans.c: Fix to allow trans create to set ACL on open. Jeremy. (This used to be commit c4f810a7588a2faf41f4222dc77678c53ab1dec0)
2001-01-24Fix insure problems with passwd caching code.Jeremy Allison1-6/+10
Jeremy. (This used to be commit 2bd4f163890be58456a7e49b1adbed3f5834ff9e)
2001-01-24Added modification to Richard Bollinger getpw[nam|uid] cache patch. OnlyJeremy Allison1-2/+14
uses cache max 100 times. Jeremy. (This used to be commit 3712e35c5460d341ba750fe5e7bce8ef63c9f8ef)
2001-01-24getpw[nam|uid] caching patch from "Richard Bollinger"Gerald Carter1-7/+37
<rabollinger@home.com> jerry (This used to be commit 158430ba6a030061bc7d7b84126c6f7ea0041c91)
2000-10-08sys_popen got damaged when converted from FILE * to int fd I think.Jeremy Allison1-14/+3
Patrick Powell kindly pointed out the bug. Jeremy. (This used to be commit 1f156b2420b7ecf1266e650efc3cee55362e29dd)
2000-09-29added a hack to get 64 bit locking working with the broken fcntl()Andrew Tridgell1-0/+14
call in glibc 2.1.95. This hack only gets enabled if you define GLIBC_HACK_FCNTL64 (This used to be commit d8b9ec741cc57b5f3dd1b3ef782a7baed402beaa)
2000-06-12totally rewrote the async signal, notification and oplock notificationAndrew Tridgell1-109/+0
handling in Samba. This was needed due to several limitations and races in the previous code - as a side effect the new code is much cleaner :) in summary: - changed sys_select() to avoid a signal/select race condition. It is a rare race but once we have signals doing notification and oplocks it is important. - changed our main processing loop to take advantage of the new sys_select semantics - split the notify code into implementaion dependent and general parts. Added the following structure that defines an implementation: struct cnotify_fns { void * (*register_notify)(connection_struct *conn, char *path, uint32 flags); BOOL (*check_notify)(connection_struct *conn, uint16 vuid, char *path, uint32 flags, void *data, time_t t); void (*remove_notify)(void *data); }; then I wrote two implementations, one using hash/poll (like our old code) and the other using the new Linux kernel change notify. It should be easy to add other change notify implementations by creating a sructure of the above type. - fixed a bug in change notify where we were returning the wrong error code. - rewrote the core change notify code to be much simpler - moved to real-time signals for leases and change notify Amazingly, it all seems to work. I was very surprised! (This used to be commit 44766c39e0027c762bee8b33b12c621c109a3267)
2000-06-11Linux kernel oplocks now seem to work, but need a _lot_ of testingAndrew Tridgell1-8/+18
I had to modify sys_select() to not loop on EINTR. I added a wrapper called sys_select_intr() which gives the old behaviour. (This used to be commit b28cc4163bc2faaa80c5782fc02c8f03c410cdeb)
2000-06-10continued the split of the kernel level oplocks code into a moreAndrew Tridgell1-0/+2
modular form. In this pass I added oplock_irix.c and added a "struct kernel_oplocks" that describes a kernel oplock implementation. (This used to be commit b5ceab810292602ea9a81696c20a781c16b706c2)
2000-06-09clean up oplock capability code ready for Linux codeAndrew Tridgell1-7/+15
(This used to be commit 70dcc791b45ac64fc536ef449e4e6b53b2b68fd4)
2000-05-02Added sys_fork() and sys_getpid() functions to stop the overheadJeremy Allison1-1/+31
of doing a system call every time we want to just get our pid. Jeremy. (This used to be commit 148628b616b5c29ba6340d65fc3ddbcabba6e67a)
2000-04-17got rid of some more old configure tests and includesAndrew Tridgell1-17/+0
(This used to be commit f137648504362479143d50477fa38ebf7147968b)
2000-04-16converted a bunch more functions to use a fd instead of a FILE*Andrew Tridgell1-88/+14
to support some of this I added the following functions in util_file.c file_lines_pload : load lines from a pipe file_pload : load a pipe into memory (This used to be commit a09470817c5b21dba42f9ef4ce5e8b768a254c0b)
2000-03-16Fixes to add "paranoid" option to popen. Checks some basic things.Jeremy Allison1-1/+56
Jeremy (This used to be commit 3b8cbb10de322fd7a1063fb5b681790b10d24ab0)
2000-02-23lib/system.c: Fixed gcc warnings.Jeremy Allison1-1/+0
nmbd/nmbd_processlogon.c: Use "True" and "False" instead of 1 and 0. Others - preparing for multiple pdu write code. Jeremy. (This used to be commit 9f879ec396230deba34fbe5e82d8a65f92137c54)
2000-02-15Added replacement functions sys_popen and sys_pclose. These are basedJeremy Allison1-7/+224
on the glibc source code and are safer than the traditional popen as they don't use a shell to exec the requested command. Now we have these functions they can be tightened up (environment etc.) as required to make a safe popen. It should now be safe to add the environement variable loading code to loadparm.c Jeremy. (This used to be commit b52e92b09d4ca3b66e534f520468dee27065d048)
1999-12-22include/includes.h: Trimmed down unicode directory entry to be POSIX complient.Jeremy Allison1-3/+4
lib/system.c: Trimmed down unicode directory entry to be POSIX complient. lib/util_unistr.c: Added wstrdup(). Jeremy. (This used to be commit ca64f4ab00c6d54022ba9bd4b869523566a242d7)
1999-12-22First cut at unicode sys_xx functions. Now to start moving upwards.....Jeremy Allison1-0/+169
Jeremy. (This used to be commit b5eb009cc3cfd1adc044e91911d59acdb54c30cb)
1999-12-13first pass at updating head branch to be to be the same as the SAMBA_2_0 branchAndrew Tridgell1-38/+159
(This used to be commit 453a822a76780063dff23526c35408866d0c0154)
1999-12-01sys_select added one more argument (read, write selectors).Luke Leighton1-3/+4
(This used to be commit e4d92ff9dfc51735e6932748f66a7c20b2c1cb6a)
1999-07-16check to see if copy_passwd_struct() ever receives its own internalLuke Leighton1-0/+7
buffer as an argument :-) :-) (This used to be commit 0d1f5e5a6d1cbceda3be3d5626842116e6e91809)
1999-07-06using jeremy's sys_getpwnam() call in the more critical area: Get_Pwnam().Luke Leighton1-3/+3
made sure that hashed_getpwnam() has the copy-passwd-struct-wrapper around it, too. TODO: replace all calls of getpwnam() with sys_getpwnam(). (This used to be commit 436a89145524d3539b3a247f98c1e71f0616dd70)
1999-07-06added jeremy's sys_getpwnam() and sys_getpwuid() routines from 2_0 tree.Luke Leighton1-0/+57
(This used to be commit df756f37230bcc47ef6a2067b6ddd8a0e2a125d1)
1998-11-25Makefile.in: Added maintainer mode fixes.Jeremy Allison1-220/+6
aclocal.m4: Added AC_LIBTESTFUNC. configure.in: Fixed -lsecurity -lsec problems. client.c: dos_ fixes. groupdb/aliasunix.c: Dead code removal. include/includes.h: Added default PRINTCAP_NAME. lib/genrand.c: dos_ fixes. lib/replace.c: Added strtoul. lib/system.c: dos_ fixes. lib/util.c: dos_ fixes. lib/util_sid.c: Signed/unsigned fixes. lib/util_str.c: removed bad const. locking/locking_slow.c: dos_ fixes. printing/printing.c: dos_ fixes. rpc_server/srv_samr.c: Dead code removal. rpc_server/srv_sid.c: global_myworkgroup defined with wrong size AGAIN ! smbd/dir.c: dos_ fixes. smbd/open.c: dos_ fixes. smbd/oplock.c: dos_ fixes. smbd/reply.c smbd/server.c smbd/service.c smbd/uid.c: dos_ fixes. Jeremy. (This used to be commit 6acb4b68f68d516e2ac3c47e500f5600d653435e)