summaryrefslogtreecommitdiffstats
path: root/lib/libc/gen/Makefile.inc
Commit message (Collapse)AuthorAgeFilesLines
...
* Implement getpeereid(3), a front-end to the LOCAL_PEERCREDdd2001-08-171-2/+2
| | | | | | | socket option for the Unix domain. It's weaker than the socket option (this only returns the uid and gid, while the socket opt. can return the entire group list), and is implemented mostly for compatibility with OpenBSD.
* Only pull in the MD files if they exist. This allows for progressivemp2001-07-311-0/+2
| | | | implementation and compilation when bringing up a new architecture.
* Introduce getprogname(3) and setprogname(3) library calls. These getdd2001-05-151-3/+5
| | | | | | | | | and set __progname, respectively. Discussed on: -arch (Feb 2001), -audit Reviewed by: -audit Approved by: kris Obtained from: (mostly) NetBSD
* Add fmtcheck(), a function for checking consistency of format stringkris2001-04-171-2/+2
| | | | | | | | | | | | | | | | | arguments where the format string is obtained from user data, or otherwise difficult to verify statically. Example usage: printf(fmtcheck(user_format, standard_format), arg1, arg2); checks the format string user_format for consistency (same number/order/ type of format operators) with standard_format. If they differ, standard_format is used instead to avoid potential crashes or security violations. Obtained from: NetBSD Reviewed by: -arch
* MAN[1-9] -> MAN.ru2001-03-271-1/+1
|
* This is kind of a hack, but it should work. Currently, world is brokenpeter2001-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | because libc/rpc/key_call.c references uname(), and ps/print.c also defines uname(), and ps is linked statically. This leads to a symbol clash. The userland uname(3) kinda sucked anyway as the hostname etc was too short. And since the libc rpc interface now uses the utsname.nodename which gets truncated, I was tempted into doing something about it. Create a new userland uname function, called __xuname() which takes an extra argument that allows you to change the size of the fields. uname() becomes a static inline function in sys/utsname.h that passes the extra argument in. struct utsname has its field members expanded by default now in userland. We still provide a 'uname' externally linkable function for things that either think that they ``know'' the utsname format and assume 32 character strings and bypass the include file, or objects that are linked against old libcs. ie: just about every plausible case that I can think of is covered. Should we ever change the default lengths again, a libc major bump should not be required as the size is now passed to the function. XXX the uname(2) in the kernel is for FreeBSD 1.1 binary compatability! All the uname(3) functions that are exported to userland are actually implemented in libc with sysctl. uname(1) uses sysctl directly and does not call uname(3). PR: bin/4688
* Don't install links for crypt.3 here. There is no crypt.3 here...bde2001-02-051-2/+0
| | | | | Forgotten in: rev.1.58, which was not Submitted by: bde (I requested untangling parts of the crypto mess).
* Remove _THREAD_SAFE and make libc thread-safe by default bydeischen2001-01-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | adding (weak definitions to) stubs for some of the pthread functions. If the threads library is linked in, the real pthread functions will pulled in. Use the following convention for system calls wrapped by the threads library: __sys_foo - actual system call _foo - weak definition to __sys_foo foo - weak definition to __sys_foo Change all libc uses of system calls wrapped by the threads library from foo to _foo. In order to define the prototypes for _foo(), we introduce namespace.h and un-namespace.h (suggested by bde). All files that need to reference these system calls, should include namespace.h before any standard includes, then include un-namespace.h after the standard includes and before any local includes. <db.h> is an exception and shouldn't be included in between namespace.h and un-namespace.h namespace.h will define foo to _foo, and un-namespace.h will undefine foo. Try to eliminate some of the recursive calls to MT-safe functions in libc/stdio in preparation for adding a mutex to FILE. We have recursive mutexes, but would like to avoid using them if possible. Remove uneeded includes of <errno.h> from a few files. Add $FreeBSD$ to a few files in order to pass commitprep. Approved by: -arch
* Add the function sysctlnametomib to libc. Details on the semanticsmckusick2001-01-231-2/+2
| | | | and use of this function have been added to the sysctl.3 manual page.
* Link stringlist.3 to sl_{add,find,free,init}.3ben2000-12-271-0/+2
|
* Add nsswitch support. By creating an /etc/nsswitch.conf file, you cannectar2000-09-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | configure FreeBSD so that various databases such as passwd and group can be looked up using flat files, NIS, or Hesiod. = Hesiod has been added to libc (see hesiod(3)). = A library routine for parsing nsswitch.conf and invoking callback functions as specified has been added to libc (see nsdispatch(3)). = The following C library functions have been modified to use nsdispatch: . getgrent, getgrnam, getgrgid . getpwent, getpwnam, getpwuid . getusershell . getaddrinfo . gethostbyname, gethostbyname2, gethostbyaddr . getnetbyname, getnetbyaddr . getipnodebyname, getipnodebyaddr, getnodebyname, getnodebyaddr = host.conf has been removed from src/etc. rc.network has been modified to warn that host.conf is no longer used at boot time. In addition, if there is a host.conf but no nsswitch.conf, the latter is created at boot time from the former. Obtained from: NetBSD
* Move setproctitle() from libutil to libc (after a repo-copy)brian2000-09-021-3/+3
| | | | | | | | | and bump __FreeBSD_version to 500012 to mark the occasion. setproctitle() is prototyped in unistd.h as opposed to stdlib.h where OpenBSD and NetBSD have it. Reviewed by: peter
* Import XPG4-compliant basename(3) and dirname(3) from OpenBSD.des2000-08-311-2/+4
| | | | | | | | The man pages need some adjustments. PR: 12960, 12962 Submitted by: James Howard <howardjp@wam.umd.edu> Obtained from: OpenBSD
* Add a skeleton rfork_thread(3) man page.peter2000-07-291-1/+2
|
* Re-pair the MLINKS of unvis.3 with strunvisx.3. This undoubtedly was agreen2000-07-031-1/+1
| | | | world breakage.
* Add strunvisx.3 MLINK.alex2000-07-021-1/+1
|
* Add strtofflags and fflagstostr to libc.joe2000-06-171-2/+3
|
* Add shm_open(3) and shm_unlink(3). The documentation could use a goodwollman2000-04-221-2/+4
| | | | | bit of work (and is stylistically probably the worst manual page I've ever written).
* Revert part of the last commit, remove {g|s}etflags from the libcjoe2000-02-051-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | interface, and statically link them to the programs using them. These functions, upon reflection and discussion, are too generically named for a library interface with such specific functionality. Also the api that they use, whilst ok for private use, isn't good enough for a libc function. Additionally there were complications with the build/install-world process. It depends heavily upon xinstall, which got broken by the change in api, and caused bootstrap problems and general mayhem. There is work in progress to address future problems that may be caused by changes in install-chain tools, and better names for {g|s}etflags can be derived when some future program requires them. For now the code has been left in src/lib/libc/gen (it started off in src/bin/ls). It's important to provide library functions for manipulating file flag strings if we ever want this interface to be adopted outside of the source tree, but now isn't necessarily the right moment with 4.0-release just around the corner. Approved: jkh
* Install setflags.3 and its link to getflags.3.bde2000-01-281-1/+3
|
* Historically file flags (schg, uschg, etc) have been converted fromjoe2000-01-271-1/+1
| | | | | | | | | | | | | | | | | string to u_long and back using two functions, flags_to_string and string_to_flags, which co-existed with 'ls'. As time has progressed more and more other tools have used these private functions to manipulate the file flags. Recently I moved these functions from /usr/src/bin/ls to libutil, but after some discussion with bde it's been decided that they really ought to go in libc. There are two already existing libc functions for manipulating file modes: setmode and getmode. In keeping with these flags_to_string has been renamed getflags and string_to_flags to setflags. The manual page could probably be improved upon ;)
* Document isnanf() for checking if a float is NaN (``Not-a-Number'') andchris2000-01-191-1/+1
| | | | | | create a link from isnanf.3 to isinf.3. PR: 13878
* This man page is not needed; it just gets jumped on later when libcryptmarkm2000-01-181-1/+1
| | | | | is installed. Submitted by: bde
* Add a new function dllockinit() for registering thread lockingjdp1999-12-271-1/+1
| | | | | | | | | | | | | | | | | | | functions to be used by the dynamic linker. This can be called by threads packages at start-up time. I will add the call to libc_r soon. Also add a default locking method that is used up until dllockinit() is called. The default method works by blocking SIGVTALRM, SIGPROF, and SIGALRM in critical sections. It is based on the observation that most user-space threads packages implement thread preemption with one of these signals (usually SIGVTALRM). The dynamic linker has never been reentrant, but it became less reentrant in revision 1.34 of "src/libexec/rtld-elf/rtld.c". Starting with that revision, multiple threads each doing lazy binding could interfere with each other. The usual symptom was that a symbol was falsely reported as undefined at start-up time. It was rare but not unseen. This commit fixes it.
* Fixed missing installation of a link to ctermid_r.3.bde1999-12-231-0/+1
|
* Nuke dlopen.3 -> dlversion.3 link.phantom1999-09-231-2/+1
| | | | | | This function was removed by jdp in rev.1.5 of dlopen.3 Forgoten by: jdp
* Add links for errc.3, verrc.3, warnc.3, vwarnc.3.phantom1999-09-221-2/+3
| | | | | PR: docs/13222 Submitted by: Ben Smithurst <ben@scientia.demos.co.uk>
* $Id$ -> $FreeBSD$peter1999-08-281-1/+1
|
* Fixed disordering and duplication of MLINKS in previous commit tobde1999-05-191-1/+2
| | | | libc/string/Makefile.inc. psignal.3 doesn't live in libc/string.
* Add manpage link for dlversion(3).jdp1999-04-071-2/+3
|
* Add a new library function getobjformat(). It checks all thejdp1998-09-091-3/+5
| | | | | | | | | | | | | standard places ("/etc/objformat", ${OBJFORMAT}, argv) for an indication of the user's preferred object file format. This consolidates some code that was starting to be duplicated in more and more places. Use the new function in ldconfig. Note: I don't think that gcc should use getobjformat(), even though it could. The compiler should limit itself to functions that are widespread, to ease porting and cross-compilation.
* isnetworktty -> isnettty. ttyent.h has already gone through 3bde1998-08-031-2/+2
| | | | | | revisions to match the confusing spelling in getttyent.c (1 to break it to match the man page and 1 in each of 2 branches to fix it). This function seems to be orphaned and unused.
* Add lockf().dt1998-07-081-3/+3
|
* Make nlist() understand elf unconditionallypeter1998-06-121-5/+1
|
* Move ftok() from libcompat to libc, so that it can be closer to itsjdp1998-06-101-3/+3
| | | | | | friend shmget(). PR: closes misc/6763
* Change MACHINE to MACHINE_ARCH.jb1998-03-091-12/+4
| | | | | | Add _spinlock.c (stubs) to sources. Nuke tahoe and vax.
* Remove the config_* routines with permission from Poul-Henning Kamp,steve1998-02-281-5/+3
| | | | | | | the original author. PR: 5834 Discussed with: phk, jkh
* Fixed disordering of MLINKS in previous commit. Fixed old disorder inbde1998-02-121-17/+15
| | | | MLINKS.
* Move the trampolines for dlopen and related functions from crt0.ojdp1998-02-091-3/+7
| | | | | | | | | | | | | | | into libc. This reduces the size of every dynamically linked executable by 248 bytes, and it reduces the size of static executables by a lesser amount. It also eliminates some global namespace pollution. With this change in place, the source for dlfcn.h should probably be moved to "/usr/src/include". I'll save that for another day. Compatibility note: Programs which use dlopen, if compiled on systems with this change, will not run on systems with a libc from prior to this change. Very few programs use dlopen, so I think that is OK.
* Sorted lists.bde1997-10-211-45/+45
|
* Removed the subdirectory paths from the definitions of MAN[1-9]. Theybde1997-10-151-24/+18
| | | | | were a workaround for limitations in bsd.man.mk that were fixed about 2 years ago.
* Moved `SRCS+= frexp.c' to the correct Makefile.inc.bde1997-10-141-2/+2
|
* Initial elf nlist support, mostly stolen from OpenBSD (they use standardpeter1997-08-311-1/+5
| | | | | | | | | | | #defines that are compatable with ours). I made some some minor tweaks to the leading '_' tests. Again, this is off by default for the moment. This probably should be split into seperate files (like some of our other libc files that could do with some splitting). Obtained from: OpenBSD (plus some minor tweaks)
* Add a quick description of sysctlbyname() and link sysctl.3 topeter1997-07-121-1/+2
| | | | sysctlbyname.3
* Add stringlist functions from NetBSD. (required for the new ftp(1)msmith1997-06-251-5/+6
| | | | Obtained from: NetBSD
* Add arc4random() functions from OpenBSD. They are almost same as ourache1997-06-141-5/+6
| | | | | | | srandomdev(), but can be used inside libraries. random() can't be used inside libraries because it breaks its possible predictable sequence. arc4random() is true random as designed, so its usage is library-safe. Obtained from: OpenBSD
* sysctlbyname allows acces to sysctl variables by name.phk1997-05-301-2/+2
| | | | | | | The manpage has been sent to linquistic decontamination and will arrive when released from the quarantine Reviewed by: peter
* Changed all paths to be relative to src/lib instead of src/lib/libcjb1997-05-031-3/+6
| | | | | | | | | | so that all these makefiles can be used to build libc_r too. Added .if ${LIB} == "c" tests to restrict man page builds to libc to avoid needlessly building them with libc_r too. Split libc Makefile into Makefile and Makefile.inc to allow the libc_r Makefile to include Makefile.inc too.
* This stub has not been required by libc for a long time. Nuke it.jb1997-05-031-2/+2
|
* Add MLINKS for isdialuptty(3) & isnetworktty(3).davidn1997-04-131-2/+4
|
OpenPOWER on IntegriCloud