Commit Graph

3935 Commits

Author SHA1 Message Date
Rob Braun
81781ca042 Reduce libc's memory footprint by lazily allocating memory used internally
by setproctitle().

Reviewed by: jkh
2002-12-21 22:04:50 +00:00
Rob Braun
5fb691beab Reduce libc.so's memory footprint by lazily allocating memory used internally
by basename() and dirname().
Reviewed by: eric
2002-12-21 07:12:35 +00:00
Tim J. Robbins
2226ce021a Import newer versions of div() and ldiv() from NetBSD which handle
the -fpcc-struct-return calling convention properly instead of
returning garbage. This may break backwards compatibility with some old
binaries that were compiled when -fno-pcc-struct-return was the default.
2002-12-21 05:11:39 +00:00
Tim J. Robbins
4aca04ee5c Document the fact that the printf() family of functions return negative
values (EOF in our case) on error, and some of the possible errno values
in an Errors section.

PR:		39257
2002-12-20 08:28:10 +00:00
Tim J. Robbins
5a7405be50 C99 standardised the vscanf() family of functions, update Standards
section to reflect this.
2002-12-20 07:46:01 +00:00
Mike Barcroft
68cd9bedfb Stylistic changes:
o Fix an English error (comma splice) and poorly worded sentence.
o Fix KNF ordering of variables (pointers come before arithmetic types).
o Restore hand-optimization of sizeof()-1, instead of strlen().
o Remove unneeded local variables in strerror_r().

Test by:	strerror regression test
Requested by:	bde
Reviewed by:	bde
2002-12-20 05:26:10 +00:00
Tom Rhodes
bd8dfc819e Document what really occurs when we obtain an error.
PR:		43357
Submitted by:	David Schultz <dschultz@uclink.Berkeley.EDU>
2002-12-20 01:01:24 +00:00
Ceri Davies
9d99e59872 Grammatical fixup: s/be the -1/be -1/
MFC after: 1 day
2002-12-19 21:48:43 +00:00
Tim J. Robbins
c0dd63a8a8 Add back the Standards section claiming conformance to 1003.1-2001 and
C99 now that all known standards-related bugs have been fixed.
2002-12-19 10:24:52 +00:00
Tim J. Robbins
37d2356335 Write the message to stderr, not file descriptor 2, so that perror()
writes to the correct stream if stderr has been redirected with freopen().
2002-12-19 09:53:26 +00:00
Tim J. Robbins
a207a8e3f1 Use strerror_r() to format the error message so that strerror()'s static
buffer does not get clobbered.

ISO/IEC 9899:1999 7.21.6.2 3:
"The implementation shall behave as if no library function calls the
strerror function."
2002-12-19 09:50:10 +00:00
Ruslan Ermilov
2efeeba554 mdoc(7) police: "The .Fa argument.". 2002-12-19 09:40:28 +00:00
Ruslan Ermilov
3ca4c01eea mdoc(7) police: Fixed a few .Fa abuses. 2002-12-19 09:33:34 +00:00
Ruslan Ermilov
454e286809 mdoc(7) police: excessive quotes. 2002-12-19 08:13:27 +00:00
Mike Barcroft
5a98f074e6 Rearrange strerror() so that its itoa procedure can be used with
strerror_r().  Doing this allows us to ensure that strerror_r() always
fills the supplied buffer regardless of EINVAL or ERANGE errors.

strerror()'s semantics have changed slightly such that an argument of
0 is now considered invalid and errno is set to EINVAL.

Remove internal regression test for strerror() and strerror_r().  This
will be reincarnated in src/tools/regression/lib/libc/string.

In strerror(3), add a comment about strerror()'s bogus return type.

PR:	44356
2002-12-18 16:53:31 +00:00
Ruslan Ermilov
5c564bae0a mdoc(7) police: Fixed abuses of the .Ar and .Em macros. 2002-12-18 13:33:04 +00:00
Ruslan Ermilov
1fae73b137 mdoc(7) police: "The .Fn function". 2002-12-18 12:45:11 +00:00
Ruslan Ermilov
a0ce78ec1d mdoc(7) police: "The .Fn system call". 2002-12-18 12:39:25 +00:00
Ruslan Ermilov
95f4226b27 mdoc(7) police: "The .Fn function". 2002-12-18 10:13:54 +00:00
Ruslan Ermilov
b92cc9b878 mdoc(7) police: Fixed the .Nm abuse. 2002-12-18 10:10:32 +00:00
Ruslan Ermilov
2faeeff4c9 mdoc(7) police: Tidy up the syscall language.
Stop calling system calls "function calls".

Use "The .Fn system call" a-la "The .Nm utility".

When referring to a non-BSD implementation in
the HISTORY section, call syscall a function,
to be safe.
2002-12-18 09:22:32 +00:00
Tim J. Robbins
e4ceb70f7a Document what happens when the format string contains insufficient
conversion specifications to completely specify the resulting struct tm.

PR:		46331
Submitted by:	Christian S.J. Peron
MFC after:	2 weeks
2002-12-18 05:00:54 +00:00
Martin Blapp
fb4c80619a Change the name for the local unix-socket based protocol
from "unix" back to "local".  Add some compat stuff so both
ways work for some time.

Reviewed by:    phk
Approved by:    imp (UPDATING)
Requested by:   iedowse, lukem@netbsd.org
2002-12-16 22:24:26 +00:00
Maxim Konovalov
a61f5b202b o getsockopt(2) 'level' argument should be 0, not SOCK_STREAM. It
does not hurt anything because uipc_ctloutput() does not check
sopt->sopt_level.

Pointed out by:	ru
MFC after:	1 week
2002-12-16 13:42:13 +00:00
Matthew Dillon
92da00bb24 This is David Schultz's swapoff code which I am finally able to commit.
This should be considered highly experimental for the moment.

Submitted by:	David Schultz <dschultz@uclink.Berkeley.EDU>
MFC after:	3 weeks
2002-12-15 19:17:57 +00:00
Maxim Konovalov
04e30a1ce6 o Fix bogus getsockopt(2) call: swap SOCK_STREAM and LOCAL_PEERCRED.
The bug does not affect anything because SOCK_STREAM == LOCAL_PEERCRED == 0x1.

PR:		bin/46165
Submitted by:	Alain Thivillon <at@rominet.net>
Reviewed by:	dd
MFC after:	1 week
2002-12-15 09:37:54 +00:00
Ruslan Ermilov
0fcfb0df3a mdoc(7) police: markup overhaul. 2002-12-14 15:29:27 +00:00
Bill Fenner
43ac5a2340 Add an implementation of the POSIX.1 sockatmark(3). 2002-12-13 22:22:55 +00:00
Ruslan Ermilov
c8d40b7d34 mdoc(7) police: sort xrefs in SEE ALSO. 2002-12-13 16:53:51 +00:00
Tom Rhodes
6883c2e5ae Fix the HISTORY to match reality. They were never MFC'ed to 4.X.
Submitted by:	R. Imura <imura@ryu16.org>
Approved by:	re (murray)
2002-12-12 22:22:51 +00:00
Ruslan Ermilov
8d5d039f80 Uniformly refer to a file system as "file system".
Approved by:	re
2002-12-12 17:26:04 +00:00
Ruslan Ermilov
051bb54bd3 mdoc(7) police: Added the missing .Os call; it's not strictly
necessary nowadays, but is documented as "required", and may
become so again in the future.

Approved by:	re
2002-12-11 15:55:29 +00:00
Ruslan Ermilov
8416165a24 Fixed the parameter's name.
PR:		docs/46183
Submitted by:	Dirk Gouders <gouders@et.bocholt.fh-ge.de>
Approved by:	re
2002-12-11 14:04:37 +00:00
Ruslan Ermilov
a9a15f3ea4 mdoc(7) police: tiny nits.
Approved by:	re
2002-12-09 14:11:37 +00:00
Ruslan Ermilov
fd779e0181 mdoc(7) police: tiny nits.
Approved by:	re
2002-12-09 14:04:05 +00:00
Ruslan Ermilov
187f61df61 mdoc(7) police: overhaul.
Approved by:	re
2002-12-09 13:54:29 +00:00
Ruslan Ermilov
142de08d3a mdoc(7) police: nits.
Approved by:	re
2002-12-09 13:14:15 +00:00
Ruslan Ermilov
60849ee115 mdoc(7) police: nits.
Approved by:	re
2002-12-09 12:47:18 +00:00
Peter Wemm
878c9687ec Do not guarantee an overflow of tm_year when doing the binary search in
localtime/mktime/tmcomp and friends on ia64.

Approved by:	re
2002-12-05 19:54:47 +00:00
Ruslan Ermilov
db8993ce9e Capitalize ASCII code names.
Approved by:	re
2002-12-05 08:50:00 +00:00
Ruslan Ermilov
ae82896268 Consistently mark std(in|out|err) with .Dv, because that's how they
are marked up in stdio(3), and because they are defined expressions
of type "FILE *".

Approved by:	re
2002-12-04 18:57:46 +00:00
Ruslan Ermilov
898f520da8 mdoc(7) police: markup overhaul.
Approved by:	re
2002-12-04 17:49:15 +00:00
Ruslan Ermilov
3b29692060 mdoc(7) police: markup overhaul.
Approved by:	re
2002-12-04 16:28:45 +00:00
Ruslan Ermilov
304d1f73fe mdoc(7) police: overhaul.
Approved by:	re
2002-12-04 15:47:41 +00:00
Peter Grehan
8238b87b55 Minimal libc for PowerPC.
Reviewed by: benno

Approved by: re (blanket)
2002-12-04 07:25:14 +00:00
Peter Wemm
a5bf4e71ef Replace rev 1.33 with a real fix. The problem was integer overflows
when trying to store the year in a signed int.  The maximum time_t on ia64
is around 292 billion years in the future, but 'int' and struct tm.tm_year
can only represent then ext 2.1 billion years or so.

This solves the problem of mktime/localtime looping on ia64.  Unfortunately,
the standards say that tm_year is an 'int', so we are still stuck with a
y2147483647 bug.  bash2's configure script looks for bugs in mktime() and
fails on ia64 because of this.  However, mktime() on FreeBSD fails the test
normally anyway so this is no big loss.

This change does not affect any other platforms besides ia64.

Approved by:	re
2002-12-02 01:05:08 +00:00
Ruslan Ermilov
279062fae1 mdoc(7) police: sweep. 2002-11-29 17:35:09 +00:00
Ruslan Ermilov
92b1f2f7a3 mdoc(7) police: sweep. 2002-11-29 16:42:23 +00:00
Ruslan Ermilov
1798791d24 mdoc(7) police: formatting nits.
Approved by:	re
2002-11-29 15:57:50 +00:00
Hajimu UMEMOTO
c86d6b6cb7 try SIOCGIFINDEX 1st to be able to use network aliasing.
Submitted by:	jlemon
Approved by:	re
2002-11-28 17:46:40 +00:00
Archie Cobbs
e804e4b013 Describe newly added fields in the KSE and thread mailboxes.
Approved by:	re
2002-11-22 23:48:38 +00:00
Ruslan Ermilov
c51d717f0c libc_r wasn't so tied to libc for 22 months. 2002-11-18 09:50:57 +00:00
Marcel Moolenaar
ed7ba3cfc2 This file has reincarnated as src/include/uuid.h with a whole new
future ahead of it.
2002-11-18 08:06:39 +00:00
Marcel Moolenaar
c544e42bcf libc header files are normally in src/include. Therefore, uuid.h has
been repo-copied from src/lib/libc/uuid to src/include. Update the
makefiles.

While in src/include/Makefile, reformat and resort INCS. Reverting
the functional change only involves removing uuid.h.

Pompted by: ru
2002-11-18 07:34:56 +00:00
Mike Barcroft
4624c61c2d Update SYNOPSIS to reflect the standardized header. Add STANDARDS
section.

PR:	43270
2002-11-17 16:34:07 +00:00
Doug Barton
7fd268cce6 goto break; != break;
I've no idea if this is the right behavior for the library, but this
at least fixes the build, and matches what seems to be alfred's intent
in the commit message for 1.19.
2002-11-17 08:54:29 +00:00
Alfred Perlstein
f51c1e897d Rework the sysconf(3) interaction with aio:
sysconf.c:
  Use 'break' rather than 'goto yesno' in sysconf.c so that we report a '0'
  return value from the kernel sysctl.

vfs_aio.c:
  Make aio reset its configuration parameters to -1 after unloading
  instead of 0.

posix4_mib.c:
  Initialize the aio configuration parameters to -1
  to indicate that it is not loaded.
  Add a facility (p31b_iscfg()) to determine if a posix4 facility has been
  initialized to avoid having to re-order the SYSINITs.
  Use p31b_iscfg() to determine if aio has had a chance to run yet which
  is likely if it is compiled into the kernel and avoid spamming its
  values.
  Introduce a macro P31B_VALID() instead of doing the same comparison over
  and over.

posix4.h:
  Prototype p31b_iscfg().
2002-11-17 04:15:34 +00:00
Daniel Eischen
9ed358fddc Disconnect the userland get/set/swapcontext() functions from
libc.  I want to keep these in some version for the thread
library/ies, but don't know whether to have them repo-copied
to libc_r or renamed and kept in libc.

Change the name of an alpha macro that was changed with the
system call commit.
2002-11-16 06:39:11 +00:00
Alfred Perlstein
3d8ce33a50 Provide more correct default values for sysconf(3) reporting of the AIO
subsystems capabilities:

_SC_AIO_LISTIO_MAX returns the default of _POSIX_AIO_LISTIO_MAX
_SC_AIO_MAX returns the default _POSIX_AIO_MAX
_SC_AIO_PRIO_DELTA_MAX returns the default of 0

Without these adjustments the values returned are -1 even when the
aio side of the kernel returns '0' for them which is incorrect.

Noticed by: Craig Rodrigues <rodrigc@attbi.com>
2002-11-16 06:35:20 +00:00
Marcel Moolenaar
fef38f259f Sort SRCS. 2002-11-16 01:41:33 +00:00
Robert Drehmel
7ea630865e Define `Sudden_Underflow' when compiling for the Alpha
architecture, mainly to avoid getting a SIGFPE signal sent
when calling strtod(3) with certain input.

The SIGFPE has been sent because the code was not aware that
a Gradual Underflow is handled in software via traps on the
Alpha architecture, but is not implemented in our Alpha kernel
layer.

With `Sudden_Underflow' defined, strtod(3) should not depend
on Gradual Underflow and adjust its calculations accordingly,
which means that other, more subtle errors than the sending of
SIGFPE could be solved by this.

Discussed with:	bde
PR:		alpha/12623
PR:		alpha/17032
PR:		alpha/43567
MFC after:	7 days
2002-11-14 17:06:01 +00:00
Warner Losh
cf04ed1bdf bde points out that the LIBC_MAJOR macro doesn't exist and requests
that we not use it here.  In its place I've put a comment about the
current state of play.

Submitted by: bde
2002-11-14 14:06:14 +00:00
Ruslan Ermilov
bedff4e805 Reset LogTag to NULL in closelog(3). This fixes mysterious crashes
caused by dynamic PAM modules that call openlog(3) and closelog(3),
e.g. ports/security/pam_pwdfile.

What happened here is that the module first registered its "ident"
with openlog(3), then PAM library unloaded module with dlclose(3),
and the next call to syslog(3) resulted in SIGSEGV.

MFC after:	3 days
2002-11-14 12:40:14 +00:00
Marcel Moolenaar
122dd01309 o Fix _longjmp() to return 1 when the return value is given as 0.
o  Remove the unwanted smartness in _longjmp() where it compares
   the current ar.bspstore with the saved ar.bspstore and restores
   ar.rnat based on it. This either avoids saving ar.rnat in the
   jmp_buf or is the consequence of not saving ar.rnat. All this
   complexity breaks libc_r where we use longjmp() to switch to
   different threads and the current ar.bspstore has no relation
   to the saved ar.bspstore. Thus: we save ar.rnat in setjmp()
   and simply restore ar.bspstore and ar.rnat in longjmp().

This code needs a cleanup.
2002-11-14 06:40:23 +00:00
Daniel Eischen
fcfc20c88a Argh, change declaration of two-dimensional array so that it actually
builds.
2002-11-13 21:55:22 +00:00
Daniel Eischen
28c104a549 Make this compile with whatever error-checking is enabled in buildworld
and/or beast.
2002-11-13 19:35:40 +00:00
Daniel Eischen
fb22a377c6 Use a jump table (a la Solaris) for pthread routines with default
entries in the table being stubs.  While I'm here, add macros to
auto-generate the stubs.  A conforming threads library can override
the stub routines by filling in the jump table.

Add some entries to namespace.h and sync un-namespace.h to it.
Also add a comment to remind folks to update un-namespace.h
when changing namespace.h.
2002-11-13 18:12:09 +00:00
Marcel Moolenaar
7aa65edc75 ia64 ABI breaker:
Don't force 16-byte alignment at run-time. Do it at compile-time.
This saves us the pointer fiddling by the setjmp functions and
reduces complexity. While here, increase the jmp_buf by 16 bytes
to an even 512 bytes. Coincidentally, due to the way alignment
was handled prior to this change, the jmp_buf has not changed in
size, but only in how the space is used. Prior to this change
the 16 bytes were reserved for enforcing alignment; now they are
reserved by us for future extensions.
Therefore, this ABI breaker is relatively save: the failure is
always an alignment trap.
2002-11-11 08:11:44 +00:00
Marcel Moolenaar
40e2de8b79 Given that we have 3 places to document UUID related information,
namely uuidgen(1), uuidgen(2) and uuid(3), the following division
has been choosen:
	uuidgen(1)	A description of the command line utility,
			and other user oriented UUID information.
	uuidgen(2)	A mostly technical description of UUIDs.
	uuid(3)		A description of the functions and other
			programmer oriented UUID information.

According to the division: add more technical contents.

Contributed by: Hiten Pandya <hiten@uk.FreeBSD.org>
Edited and enhanced: marcel
2002-11-11 00:29:01 +00:00
Tim J. Robbins
b18146b4c2 Add cross references to mbrtowc(3) and wcrtomb(3). 2002-11-10 11:14:58 +00:00
Tim J. Robbins
2f5154a2c1 Don't check whether the first byte of the buffer is a null byte when
the buffer has zero length (n == 0).
2002-11-10 10:49:14 +00:00
Warner Losh
c906b66373 Restore Peter's version of static __sF. There's too much pain for it
to be static for 5.0.  I may remove this for 5.1 or 5.2.  No more
binaries or libarires will be generated with __sF starting as of
yesterday.  Originally the plan had been to eliminate this for 5.0,
but we didn't get the __std{in,out,err}p changes merged into -stable
until yesterday (rather than in September 2001 like it should have
been).  Given that didn't happen on time, we can't do the other part
of the scheme now.

# Please do not change this without talking to me first.
2002-11-10 08:44:38 +00:00
Tim J. Robbins
7183f43d95 Describe the n' and ps' arguments to mbrlen(). 2002-11-09 10:21:01 +00:00
Tim J. Robbins
f4937dbebc Typo: pointer to -> pointed to 2002-11-09 09:47:06 +00:00
Tim J. Robbins
490eeb06b4 Use wide character ctype functions directly instead of relying on
4.4BSD extensions to the single-byte ctype functions.
2002-11-09 05:19:08 +00:00
Tim J. Robbins
39df93ae41 Add a missing return statement for the pwcs == NULL case (XSI extension). 2002-11-09 04:13:26 +00:00
Robert Watson
963b8cdcc8 Update acl.3 to xref getfacl(1) and setfacl(1), the recommended tools for
manipulating file ACLs.  Update the status of the implementation a bit,
update the copyright, etc.

Obtained from:	TrustedBSD Project
2002-11-08 15:01:28 +00:00
Chris Costello
2834b91a8d o Make the COMPATIBILITY section a bit less redundant.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Labs
2002-11-06 17:38:18 +00:00
Chris Costello
baae0d7638 o Update man page to reflect the new prototypes for mac_{to,from}_text.
o Remove a (currently) no-longer-pertinent entry from errors.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Labs
2002-11-06 17:34:29 +00:00
Robert Watson
ce311c66ec Hook up the userland wrapper for __mac_execve().
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-11-06 03:38:47 +00:00
Juli Mallett
7a9b006d78 Wrap function prototype declarations in __BEGIN_DECLS to do the right thing
with them in non-C cases.

Requested by:	Patrick Hartling <patrick@137.org>
2002-11-05 10:55:16 +00:00
Robert Watson
f8d0815040 License update authorized by NAI: remove clause 3. 2002-11-05 01:42:35 +00:00
Robert Watson
1ccff0f490 Clarify language relating to ACLs, Capabtilities, and MAC, since the
implementation status of these services has changed substantially
since this man page was last updated.
2002-11-04 20:52:09 +00:00
Robert Watson
ec05f17e38 Update license, historical information. 2002-11-04 20:45:44 +00:00
Robert Watson
443ab2a0fd Point out that the MAC Framework is considered experimental. 2002-11-04 20:42:58 +00:00
Nick Sayer
e3979b2122 After waiting for help with the markup, I finally decided to just patch
the page myself. The new language is more accurate than what was there
before, but the most accurate way of describing the funcionality eludes
me.

PR:		kern/33904
MFC after:	1 month
2002-11-04 19:30:04 +00:00
Tim J. Robbins
e30609f0b6 Add descriptions for some _PC_* variables from <sys/unistd.h> that
were missing.
2002-11-04 07:21:44 +00:00
Alfred Perlstein
ac1cc6ee11 Backout "compatibility hack" for __sF.
Requested by: Steve Kargl <sgk@troutmask.apl.washington.edu> (submitter)
2002-11-04 03:23:56 +00:00
Alfred Perlstein
0fc25b925d Provide a hook to make __sF visible outside of libc for commercial apps
if WANT_COMPAT4_STDIO is defined when compiling libc.

Submitted by: Steve Kargl <sgk@troutmask.apl.washington.edu>
2002-11-02 19:47:53 +00:00
Kelly Yancey
e0f640e82d Track the number of non-data chararacters stored in socket buffers so that
the data value returned by kevent()'s EVFILT_READ filter on non-TCP
sockets accurately reflects the amount of data that can be read from the
sockets by applications.

PR:		30634
Reviewed by:	-net, -arch
Sponsored by:	NTT Multimedia Communications Labs
MFC after:	2 weeks
2002-11-01 21:27:59 +00:00
Doug Rabson
ceb336710e * Add stubs for pthread_cond_broadcast.
* Fix typos in rwlock stubs.
* Add pthread_XXX counterparts to the _pthread_XXX stubs which libraries
  like libX11 can use to ensure thread-safety without requiring the use
  of a thread library.

Submitted by: Terry Lambert (pthread_cond_broadcast)
Reviewed by: deischen
2002-11-01 09:37:17 +00:00
Tim J. Robbins
14ffdae94d No need to include floatio.h here: vfscanf() no longer uses anything
it defines.
2002-11-01 05:13:01 +00:00
Archie Cobbs
83999f5a32 Re-apply the previously backed-out commit that fixes the problem where
HUGE_VAL is not properly aligned on some architectures. The previous
fix now works because the two versions of 'math.h' (include/math.h
and lib/msun/src/math.h) have since been merged into one.

PR:	bin/43544
2002-10-31 23:05:20 +00:00
Alfred Perlstein
c313cb2abf Make __sF static. This can not be allowed to exist in 5.x. 2002-10-31 01:54:27 +00:00
Tim J. Robbins
f6b767e33f Add two additional references to the See Also section, which contain much
better descriptions of UTF-8 and related issues.
2002-10-30 11:49:05 +00:00
Marcel Moolenaar
65393a863e Implement DCE 1.1 compliant UUID functions. Immediate use of these
functions is expected for uuidgen(1), mca(8) and gpt(8). Given the
generic use of UUIDs beyond the scope of the DCE 1.1 specification,
visibility of the data structure at all levels of the machine,
including firmware and the wish to not create a permanent build-
time FreeBSD-ism for DCE compliant applications by creating a new
library, it was decided that libc would be the least inappropriate
place. Also, because the UUID functions live in libc under IRIX as
well, we have maximized our portability and left as many options
open as possible.

This implementation introduces an extension not found in the
specification: the status parameter is allowed to be a NULL-
pointer. The reason for introducing the extension is because
the status is almost never of any use.

The manpage that's part of this commit is a minimal place-holder
and is further fleshed-out in the near future.

Approved by: re@
Contributed by: Hiten Mahesh Pandya <hiten@unixdaemons.com>
Sponsored by: marcel :-)
Tested on: alpha, i386, ia64
2002-10-30 03:51:00 +00:00
Robert Watson
626251ea01 While an interface can be depreciated, we prefer deprecated.
Submitted by:	Wayne Morrison <tewok@tislabs.com>
2002-10-29 20:53:46 +00:00
Ruslan Ermilov
ff56972e0e Cosmetics. 2002-10-29 15:00:10 +00:00
Ruslan Ermilov
b382ba4fb1 bsd.doc.mk changes:
Don't gratuitously pipe thru a cat(1) if NODOCCOMPRESS.

Only create _stamp.extra when necessary.

Get rid of SOELIMPP and OBJS.

Use Groff version of soelim(1); we need its -I option
for the following to work.

Don't needlessly chdir to SRCDIR.  Only a few documents
need CD_HACK, and those that need it either use refer(1)
or .PSPIC macro which internally uses the .psbb call.
2002-10-29 14:56:09 +00:00
Tim J. Robbins
a019c0e525 Remove unnecessary inclusion of <rune.h> to make it obvious that this file
does not use the deprecated rune system.
2002-10-29 09:03:57 +00:00
Chris Costello
311e43248d Scoop out examples illustrating the label text format and refer to
maclabel(7) instead.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Labs
2002-10-28 23:06:04 +00:00
Tim J. Robbins
ae95ea1a26 Cross-reference putc(3). 2002-10-28 10:35:18 +00:00
Tim J. Robbins
c5929b304e Handle boundary cases more correctly; mblen(s, 0) and mbtowc(NULL, s, 0)
return -1 regardless of what s points to, mbtowc(&w, s, 1) sets w to a
null wide character when s points to a null byte. This seems to be closer
to what most other implementations do, but the C99 standard contradicts
itself for these cases.
2002-10-28 08:24:46 +00:00
Garrett Wollman
c9885518de Create a small library function, check_utility_compat(3), to determine
whether a named utility should behave in FreeBSD 4.x-compatible mode
or in a standard mode (default standard).  The configuration is done
malloc(3)-style, with either an environment variable or a symlink.

Update expr(1) to use this new interface.
2002-10-28 00:15:43 +00:00
Garrett Wollman
188c541ceb Update limits and configuration parameters for 1003.1/TC1/D6.
Implement new sysconf keys.  Change the implenentation of
_SC_ASYNCHRONOUS_IO in preparation for the next set of changes.

Move some limits which had been in <sys/syslimits.h> to <limits.h> where
they belong.  They had only ever been in syslimits.h to provide for the
kernel implementation of the CTL_USER MIB branch, which went away with
newsysctl years ago.  (There is a #error in <sys/syslimits.h> which I
will downgrade in the next commit.)
2002-10-27 18:03:02 +00:00
Garrett Wollman
688dfe4533 Do not include <sys/syslimits.h> directly; it is not intended for general
consumption.
2002-10-27 17:44:33 +00:00
Tim J. Robbins
b6f33850e0 Style sweep. 2002-10-27 10:41:21 +00:00
Hajimu UMEMOTO
ddb2984b5d query ip6.arpa then ip6.int for IPv6 reverse lookup. follows RFC3152.
MFC after:	5 days
2002-10-26 19:00:14 +00:00
Hajimu UMEMOTO
a89c1d30b2 - scopeid is u_int32_t
- strtoul pedant.  pointed out by deraadt

Obtained from:	KAME
MFC after:	1 week
2002-10-25 17:07:02 +00:00
Hajimu UMEMOTO
dd521ef192 - kill strcpy
- port range check need to be done before htons.  from deraadt
- %d/%u audit
- correct bad practice in the code - it uses two changing variables
  to manage buffer (buf and buflen).  we eliminate buflen and use
  fixed point (ep) as the ending pointer.
- use snprintf, not sprintf
- pass correct name into q.name.  from lukem@netbsd
- sync comment

Obtained from:	KAME
MFC after:	1 week
2002-10-25 16:24:28 +00:00
Tim J. Robbins
583efa1268 Use an internal buffer for the result when the first argument is NULL. 2002-10-25 13:24:45 +00:00
Tim J. Robbins
79db40061f The ORIENTLOCK macro is no longer needed since all functions use
FLOCKFILE/FUNLOCKFILE explicitly.
2002-10-25 07:01:56 +00:00
Bruce Evans
74ed384d0d Restored sigaction's name in its prototype. 2002-10-24 13:03:46 +00:00
Sheldon Hearn
a7af55af93 * Modernize aio(4), providing instructions for static and dynamic kernel
linking.

* Fix disorder in the SEE ALSO sections of aio_*(2).

* Remove unnecessary cross-references from the SEE ALSO sections of
  aio_*(2); config(8), kldload(8) and kldunload(8) are cross-referenced
  from aio(4).

* Remove the KERNEL OPTIONS sections from aio_*(2), now that these
  pages cross-reference aio(4), which contains suitable kernel linking
  reference material.
2002-10-24 12:57:05 +00:00
Dag-Erling Smørgrav
47ae1efd8d Add cross-references to the aio(4) manual page.
Submitted by:	Craig Rodrigues <rodrigc@attbi.com>
2002-10-24 12:22:57 +00:00
Tim J. Robbins
fcd7f38f46 Replace wcsstr() with an implementation based on strstr(), which is far
more efficient. The problem with the previous implementation was that it
calculated the length of the first argument ("big") with wcslen() when
it was not necessary.
2002-10-24 02:53:45 +00:00
Tim J. Robbins
1707c9c3f5 Restore Berkeley SCCS id. 2002-10-24 02:48:45 +00:00
Tim J. Robbins
6f9ed74abc Remove the Standards section again until we get these functions sorted
out. This will probably have to wait until after 5.0-R.
2002-10-24 01:24:26 +00:00
Chris Costello
4bae1674ce Place mac_prepare() with the other mac_prepare*() functions. 2002-10-24 01:16:56 +00:00
Chris Costello
0d511a4ea7 mac_free() no longer accepts a void * parameter; only mac_t's are supposed
to be passed.  Point this out in a warning notice, which will eventually
go away, sometime between now and -RELEASE.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-10-24 01:01:29 +00:00
Chris Costello
3261668c1d Remove superfluous empty "FILES" section.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-10-23 23:56:15 +00:00
Chris Costello
b90b17d351 Remove hard sentence breaks.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, NAI Labs
2002-10-23 23:55:23 +00:00
Mark Murray
d69d15193c Make the first argument of getbsize a size_t* instead of an int*, as this is what the quantity actually is. Fix an easy const while I'm here. 2002-10-23 14:18:07 +00:00
Tim J. Robbins
fb22884400 Fix the NetBSD RCS id's on these files; somehow they were initially
committed with the tags unexpanded.
2002-10-23 11:08:40 +00:00
Tim J. Robbins
1eb0f442c7 Reimplement more efficiently, using a single forward scan (like strrchr(3))
instead of scanning forwards to find the end of the string then scanning
backwards to find the character.
2002-10-23 10:52:04 +00:00
Tim J. Robbins
ec23fdffc7 Reimplement, handling the case where c == L'\0' correctly and fixing
some style(9) bugs.
2002-10-23 10:47:47 +00:00
Hajimu UMEMOTO
aadad92276 query ip6.arpa then ip6.int for IPv6 reverse lookup. follows RFC3152.
Obtained from:	KAME
MFC after:	1 week
2002-10-23 10:45:09 +00:00
Tim J. Robbins
edafcb6d73 Add a Standards section, claiming conformance to IEEE Std. 1003.1-2001.
Also add a note to the Bugs section pointing out that strerror() and
perror() share the same static buffer.
2002-10-23 10:16:21 +00:00
Dag-Erling Smørgrav
02edf2208d Translate to English. 2002-10-23 08:55:14 +00:00
Tim J. Robbins
4bf546e192 Replace this wcsncpy() implementation with one based on strncpy.c to fix
two major bugs:
- off-by-one overflow when the length of the source string exceeds or
  equals the destination buffer size.
- old version was not padding the destination buffer with null wide chars
2002-10-23 04:35:25 +00:00
Alfred Perlstein
9ed01b5d3b Explain to users that they may want to kldload aio.
Move Xref sections.

Submitted by: Craig Rodrigues <rodrigc@attbi.com>
2002-10-22 16:12:27 +00:00
Jake Burkholder
2ecf9f7162 Rename the libc signal trampoline to __sigtramp to match netbsd. This
should allow gdb to detect when we're executing in a signal trampoline.
2002-10-22 15:15:39 +00:00
Robert Watson
391b1d758d Reflect MAC kernel/user API changes into the libc MAC implementation.
This removes a lot of complexity, since we basically just reserve
space on a retrieval of a label, and pass around strings.  Two new
elements: (1) consumers of the API must now declare what label
elements they are interested in retrieving, or (2) rely on the default
provided in a new configuration file, mac.conf.

Approved by:	re
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-22 14:36:11 +00:00
Robert Watson
19eab74a6c .Xr mac.3 and posix1e.3 to mac.9. Point at sys/mac.h in posix1e.3.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-22 01:52:53 +00:00
Robert Watson
803bf0837b Unhook the per-policy parsing/printing MAC modules in libc to prepare
to bring in the new MAC label management API.  With the new API
revision, we have only policy-agnostic code in libc and the base
kernel.

Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-21 03:54:24 +00:00
Sam Leffler
5100bb69ac track gratuitous change to sys/i386/include/reg.h 2002-10-21 03:47:22 +00:00
Tim J. Robbins
9619813de9 Cross-reference fmtcheck(3). 2002-10-20 03:56:37 +00:00
Peter Wemm
d7dd6ae7ec Give in on the __sF stuff. I have a better fix in mind that is future
proof, but this should buy me some time for now.
2002-10-19 22:28:07 +00:00
Tim J. Robbins
118bb75e02 Indent code example with one tab, not two, for consistency with the rest. 2002-10-19 13:48:45 +00:00
Tim J. Robbins
f7383f14ae C89 does not specifiy strsep(), so our strsep() implementation cannot
conform to it.

Obtained from:	OpenBSD
2002-10-19 13:41:22 +00:00
Tim J. Robbins
67c3339291 The ftok() function has not been in libcompat for quite a while. 2002-10-19 13:33:12 +00:00
Mark Murray
08076c086f Oops. Also provide a lint-compatible unused argument warning killer. 2002-10-18 16:24:20 +00:00
Mark Murray
6b83b5cdb8 ISOfy functions, sort headers and mark unused arguments. 2002-10-18 16:22:13 +00:00
Mark Murray
9e542d7dbc Correct the headers needed to use dbopen(3) and friends. 2002-10-18 16:20:08 +00:00
Tim J. Robbins
0145ba86d1 Fix off-by-one error when pushing back a multibyte sequence in
wide character class (%l[) and wide string (%ls) conversions.
2002-10-17 13:04:00 +00:00
Tim J. Robbins
63b01047f4 Make part of the previous change clearer; check flags for SUPPRESS directly
instead of checking whether we're using a temporary buffer.
2002-10-17 12:06:29 +00:00
Tim J. Robbins
bd25c6f476 The field width for single-byte string conversions (%c, %s, %[) is the
maximum number of bytes that may be stored in the array, not the maximum
number of wide characters to read. The wording of the standard unfortunately
does not make this clear.
2002-10-17 12:02:36 +00:00
Alfred Perlstein
e6fc380cd2 de-__P() 2002-10-16 22:18:42 +00:00
Robert Drehmel
6c84d0b1a5 - Remove the lsearch() and lfind() functions and their manpage from
the compatibility library libcompat.
 - Add new implementations of lsearch() and lfind() which conform to
   IEEE Std 1003.1-2001 to libc.  Add a new manual page for them and
   add them to the makefile.
 - Add function prototypes for lsearch() and lfind() to the search.h
   header.
2002-10-16 14:29:23 +00:00
Tim J. Robbins
35739e072b Count field width correctly for suppressed multibyte fields (%*lc,
%*ls, %*l[).
2002-10-16 14:07:08 +00:00
Robert Drehmel
e2830bc9e0 Remove unneeded $FreeBSD$ tags. 2002-10-16 14:05:29 +00:00
Robert Drehmel
e768c1be41 - Remove the old insque() and remque() functions and their manual
page from the compatibility library.
 - Add new implementations of insque() and remque() which conform to
   IEEE Std 1003.1-2001 to libc.  Add a new manual page for them and
   connect them to the build.
 - Add the prototypes of insque() and remque() to the search.h
   header.
2002-10-16 14:00:46 +00:00
Tim J. Robbins
6180233fd8 Set the error bit on the stream if an encoding error occurs. Improve
handling of multibyte sequences representing null wide characters.
2002-10-16 12:09:43 +00:00
Tim J. Robbins
9acd2d9b3c Avoid truncating invalid wide characters that are outside the range of
'unsigned char'; signal an error instead.
2002-10-16 11:37:38 +00:00
Tim J. Robbins
185b9d1c2c Add a Bugs section and note that fmtcheck() is out of sync with printf();
it does not recognise any of the conversions or modifiers added in C99.
2002-10-16 04:03:02 +00:00
Tim J. Robbins
927ecbf313 Add support for the XSI %C and %S formats, which are the same as %lc
and %ls.
2002-10-16 03:55:53 +00:00
Ian Dowse
d7cd6ba39b Use kqueue(2) instead of poll(2) to wait for replies and timeouts
in the UDP RPC client code. As a side-effect, this fixes some bugs
that might prevent the RPC call from ever timing out for example
if the server keeps responding with the wrong xid. This could
probably be simplified further by using the EVFILT_TIMER filter.
2002-10-15 22:28:59 +00:00
Tim J. Robbins
2fe3e5cda7 Add cross-references to the wide character counterparts of these functions. 2002-10-15 10:11:53 +00:00
Maxim Sobolev
f927dfabc9 Eliminate superfluous memory access in memcpy(3)/memmove(3).
Obtained from:	NetBSD
MFC after:	1 week
2002-10-15 09:50:07 +00:00
Tim J. Robbins
616e099e5c Remove stray comma at the end of the See Also list. 2002-10-15 09:49:54 +00:00
Tim J. Robbins
af1c9c0e4d Use a weak reference instead of a macro to make vfscanf an alias
for __vfscanf.
2002-10-14 11:18:21 +00:00
Tim J. Robbins
0b78986fe2 FA, FB and FC are lead bytes according to recent Microsoft documentation. 2002-10-14 01:50:45 +00:00
Tim J. Robbins
d891f26821 Style changes. Mainly removing excessive whitespace and parens. 2002-10-14 01:46:18 +00:00
Kris Kennaway
61bdf123c3 Ignore TMPDIR if the application is setugid.
MFC after:	2 weeks
2002-10-13 11:22:16 +00:00
Mike Barcroft
54e4e385de Add restrict type-qualifier. 2002-10-12 16:13:41 +00:00
Andrey A. Chernov
8a093dade3 Cosmetic: use LCMONETARY_SIZE_{FULL,MIN} defines like in other places 2002-10-12 11:31:07 +00:00
Tim J. Robbins
419c442678 Describe the restrictions on seeking on wide character streams, and also
point out that fseek() clears the ungetwc() buffer.
2002-10-12 09:22:25 +00:00
Tim J. Robbins
bd26dcd103 Fix a typo causing incorrect formatting for negative values in some locales
(at least the French ones), a memory leak upon successful termination, a
pointer arithmetic error causing heap corruption, and an off-by-one bug
causing incorrect amounts of padding at the right of the value.
2002-10-12 04:38:35 +00:00
Tim J. Robbins
2e9212d966 Save errno around calls to free(); at least some code paths clobber it
and we are not interested in any errors it may report.
2002-10-11 23:31:50 +00:00
Tim J. Robbins
d0d87283e9 Document the kind of format string strfmon() expects. Sync the Errors
section with reality.
2002-10-11 23:17:17 +00:00
Tim J. Robbins
2621915fa7 Use the new struct lconv members to determine how to format international
monetary values.
2002-10-11 23:08:03 +00:00
Tim J. Robbins
40a48101d3 Non-negative amounts should not have an extra space in front of them
when the `(' flag is used.
2002-10-11 23:04:59 +00:00
Tim J. Robbins
284d56227c "Left precision" and "right precision" are not flags, but separate parts
of the format string that appear after the field width.
2002-10-11 22:59:22 +00:00
Peter Wemm
74a4ba21f7 Zap the early-adopter transition aid before we get into serious
5.0-R territory, as threatened.  This only affects antique 5.0
systems that have not had a 'make world' done for well over a year.
2002-10-11 22:38:17 +00:00
Maxim Konovalov
65edeb2358 Do not allow empty GIDs for non-NIS entries.
MFC after:	2 weeks
2002-10-11 11:35:30 +00:00
Tim J. Robbins
972baa3747 Add a UTF-8 encoding method, which will eventually replace the antique
"UTF2" method. Although UTF-8 and the old UTF2 encoding are compatible
for 16-bit characters, the new UTF-8 implementation is much more strict
about rejecting malformed input and also handles the full 31 bit range
of characters.
2002-10-10 22:56:18 +00:00
Jens Schweikhardt
b2aa8b2a98 Document that write(2) et al can return EROFS for attempts to write the
disk label area.

PR:		43891
Submitted by:	Diomidis D. Spinellis <dds@istlab.dmst.aueb.gr>
MFC after:	3 days
2002-10-10 19:16:10 +00:00
Robert Drehmel
5d38e85ded Fix another spelling mistake. 2002-10-10 14:16:08 +00:00
Robert Drehmel
73fbee5795 Correct a spelling mistake. 2002-10-10 14:14:44 +00:00
Tim J. Robbins
ecab372b7e Add cross-references to wide character versions of these functions. 2002-10-10 04:31:57 +00:00
Tim J. Robbins
ce04c11001 Cross-reference between byte and wide-character stdio functions. Remove
references to fputwc() and fgetwc() being macros while I'm at it.
2002-10-10 04:12:40 +00:00
Alfred Perlstein
534ba86baa de-__P() 2002-10-09 23:22:11 +00:00
Robert Watson
cc7a6f19d0 Add brief mention of the extattr_*_link() system call variants.
Obtained from:	TrustedBSD Project
Sponsored by:	DARPA, Network Associates Laboratories
2002-10-09 22:26:48 +00:00
Tim J. Robbins
f4da1a754d Add support for the 6 new C99 struct lconv members dealing with formatting
international monetary values: int_p_cs_precedes, int_n_cs_precedes,
int_p_sep_by_space, int_n_sep_by_space, int_p_sign_posn, int_n_sign_posn.
This should not break existing binaries or LC_MONETARY data files.

Reviewed by:	ache
MFC after:	1 month
2002-10-09 09:19:28 +00:00
Peter Wemm
cf9f968444 Drop almost 3k from /bin/sync by moving errno to a seperate file
to avoid all syscalls pulling in sys_errlst[].

Noted by:  bde
2002-10-09 08:04:24 +00:00
Archie Cobbs
30e25a918b Add note that there is a kernel-imposed limit on the number of threads
in a KSE group that may be simultaneously blocked in the kernel.
2002-10-08 22:42:42 +00:00
Archie Cobbs
5f384e6a34 Add MLINKS to kse.2. 2002-10-08 17:43:40 +00:00
Tim J. Robbins
d9e5246b17 Add a note to the Compatiblity section suggesting that these functions
only be used for byte values. Add cross-references to the wide-char
counterparts.
2002-10-06 10:15:38 +00:00
Hajimu UMEMOTO
71918af633 Put giant locks due to make getaddrinfo(), getnameinfo()
and getipnodeby*() thread-safe.
Our res_*() is not thread-safe.  So, we share lock between
getaddrinfo() and getipnodeby*().  Still, we cannot use
getaddrinfo() and getipnodeby*() in conjunction with other
functions which call res_*().

Requested by:	many people
2002-10-06 08:43:35 +00:00
Tim J. Robbins
82f520853b Remove rants/whines about the rune interface being superior to the
ISO C interface.
2002-10-06 06:03:23 +00:00
Tim J. Robbins
bc98899df0 Remove a completely incorrect statement from the Return Values section.
Add cross-references to the restartable mulitybte functions (mbrlen(3) etc.)
2002-10-06 05:58:24 +00:00
Mike Barcroft
ddb4fb5b44 Add restrict type-qualifier to sem_getvalue(). 2002-10-04 21:32:00 +00:00
Robert Drehmel
45408a8564 Correct the regressive part of my last commit to these files:
use the .Fn macro instead of the .Fo ... .Fc combination to
format function prototypes.

Reminded by:	bde
2002-10-04 11:31:00 +00:00
Tim J. Robbins
fd4f1dd9fa Add a placeholder implementation of wcscoll() and wcsxfrm() which gives
locale-sensitive collation only in single-byte locales, and just does
binary comparison for the others with extended character sets.
2002-10-04 03:18:26 +00:00
David E. O'Brien
8269e8c887 Add stpcpy(3). 2002-10-03 19:39:20 +00:00
Hajimu UMEMOTO
a52b6b83a2 Allocate 64K recieve buffer for DNS responses.
Though res_query.c also defines and refers MAXPACKET, it is not
related to ansbuf.  So, I didn't touch res_query.c.
2002-10-03 17:25:33 +00:00
Tim J. Robbins
17f6e5b0e7 Improve three instances of questionable or confusing grammar. 2002-10-03 14:09:06 +00:00
Tim J. Robbins
28ddc4138c Add an example. 2002-10-03 14:07:26 +00:00
Tim J. Robbins
b06b097805 Document towlower() and towupper() in separate manual pages instead of
trying to confusingly document both on the same page. The new manual pages
are based on tolower(3) and toupper(3) instead of the old towlower(3).
2002-10-03 11:23:06 +00:00
Tim J. Robbins
9981ef2702 Point out that although toupper() and tolower() really accept rune_t's
and not just unsigned char's, callers should use towupper() and towlower()
instead when working with wide characters if portability is a concern.
2002-10-03 11:14:00 +00:00
Tim J. Robbins
73d6e4a5a2 towlower() appeared twice in the synopsis; one of the occurrences should
have been towupper(). Add towupper() to the Name section while I'm at it.

Obtained from:	NetBSD (junyoung)
2002-10-03 10:40:01 +00:00
Tim J. Robbins
f2a67ef1bd Add an Examples section with an example of how to use the functions. 2002-10-03 08:49:29 +00:00
Mike Barcroft
553c116dad Add missing const qualifier in tfind(). 2002-10-03 06:33:33 +00:00
Archie Cobbs
ac785a7f5b Add a man page for the KSE system calls.
Reviewed by:	julian, ru
2002-10-02 18:01:51 +00:00
Tim J. Robbins
61d7477610 Add an example showing how to use wcstok(). Fix ordering of See Also section. 2002-10-02 14:28:26 +00:00
Robert Drehmel
e31d11c36a Add the 'restrict' type qualifier to the prototypes of `sigaction',
`sigprocmask', `sigaltstack', and `sigwait' as well as to the
prototypes of the apparantly unimplemented functions `sigtimedwait'
and `sigwaitinfo'.  This complies with IEEE Std 1003.1-2001.
2002-10-02 10:53:44 +00:00
Mike Barcroft
4047df8d24 Add restrict type-qualifier. 2002-10-02 07:49:35 +00:00
Maxim Konovalov
9b7c7ff8ce Too strict error checking in rev. 1.22 broke pwd_mkdb(8) in NIS
environment. An empty UID and GID are valid there.

Spotted by:	rwatson
2002-10-02 07:02:46 +00:00
Dima Dorfman
e9e3b98562 Remove the "special processes" section. It has rotted, and the idea
ceased to be useful when the number of "special processes" went from 3
to one per device.  I considered replacing it with a "kernel threads"
section, but this seemed like the wrong place for that.

PR:		40969
2002-10-02 00:09:24 +00:00
Dima Dorfman
cb292be1ad Don't claim to return the fileid which we unloaded. The kernel
doesn't do this, and it wouldn't be very useful if it did, since the
caller supplies us with that number.

PR:		41329
Submitted by:	Michael Galassi <nerd@xyz.com>
2002-10-01 23:53:51 +00:00
Eric Melville
a35a7e761a Add getopt_long(3).
Obtained from:	NetBSD
Sponsored by:	Apple
2002-09-29 04:14:37 +00:00
Tim J. Robbins
3619568a64 Remove masking macros for getwc(), putwc(), putwchar() and getwchar().
Although there was nothing wrong with getwc() and putwc(), getwchar()
and putwchar() assumed that <stdio.h> had been included before <wchar.h>,
which is not allowed by the standard.
2002-09-28 07:43:44 +00:00
Peter Wemm
224af215a6 Zap now-unused SHLIB_MINOR 2002-09-28 00:25:32 +00:00
Tim J. Robbins
27a29543f3 Back out previous, free the buffer when __vfprintf() fails and don't bother
trying to shrink the buffer with realloc() before returning it.
2002-09-26 13:11:24 +00:00
Tim J. Robbins
344141d1fd Back out previous and solve the problems a different way: move va_start/
va_end closer to the __vfprintf() call, free the buffer when __vfprintf()
fails and don't bother trying to shrink the buffer with realloc() before
returning it.

Submitted by:	bde
2002-09-26 13:09:48 +00:00
Tim J. Robbins
ce2a18008c Simplify by removing unneeded local variables and explicit null termination. 2002-09-26 09:28:55 +00:00
Tim J. Robbins
e2361b6f16 Simplify by removing useless local variables and explicit null termination. 2002-09-26 09:23:07 +00:00
Tim J. Robbins
23b6f7902d Correctly handle the case where __vfwprintf() fails because it runs out
of memory.
2002-09-26 08:26:16 +00:00
Tim J. Robbins
3383deca89 Sync with OpenBSD: avoid memory leak when __vfprintf() fails because it
runs out of memory, always call va_end.
2002-09-26 07:55:18 +00:00
Mike Barcroft
a6fa9438ba <sys/types.h> is no longer needed. 2002-09-25 16:49:09 +00:00
Maxim Konovalov
05a7daf5ca Disqualify UID/GID with non-numeric character.
PR:		bin/41721
Reviewed by:	tjr, silence on -audit
MFC after:	2 weeks
2002-09-25 08:49:19 +00:00
Mike Barcroft
89fdc4e117 Use the standardized CHAR_BIT constant instead of NBBY in userland. 2002-09-25 04:06:37 +00:00
Tim J. Robbins
03ab141313 Warn when setinvalidrune() is referenced for consistency with the rest
of the rune functions (except sgetrune() and sputrune(), which are really
macros).
2002-09-24 09:25:37 +00:00
Tim J. Robbins
38b5abad06 Add cross-references between wide character and single-byte character
versions of printf() and scanf().
2002-09-24 09:22:47 +00:00
Tim J. Robbins
89265cb899 Remove an unneeded call to _sfrefill() that was missed in the conversion
from vfscanf() to vfwscanf(). It doesn't hurt to have it there, but it's
redundant since __fgetwc() will refill the buffer if it needs to.
2002-09-24 09:18:32 +00:00
Tim J. Robbins
d07090a880 Use the new va_copy macro to copy variable argument lists instead of
assignment. This is needed on powerpc but is also more correct for the
other ports.

Submitted by:	grehan
Tested on:	alpha, i386, sparc64
2002-09-24 00:47:27 +00:00
Tim J. Robbins
1f4ff8506a Add implementations of wscanf() and related functions: fwscanf(), swscanf(),
vfwscanf(), vswscanf(), vwscanf(). As the name suggests, these are wide-
character versions of the scanf() family of functions.
2002-09-23 12:40:06 +00:00
Tim J. Robbins
4712aa3b59 Implement the %lc, %ls and %[ conversions, which read sequences of wide
characters, non-whitespace wide character strings and wide character
strings in a scanset.
2002-09-23 11:35:50 +00:00
Tim J. Robbins
adc106840c The character argument for __ungetwc() should be wint_t instead of wchar_t. 2002-09-23 11:31:18 +00:00
Tim J. Robbins
1302dabd28 Add the remaining C99 wide character string to integer conversion functions.
Restrict qualifiers were added to the existing prototypes in <inttypes.h>
and the typedef for wchar_t was removed.
2002-09-22 08:06:45 +00:00
Tim J. Robbins
5f147b57ac Add an unlocked version of ungetwc(), __ungetwc(), that __vfwscanf()
will need to use.
2002-09-22 05:59:00 +00:00
Jonathan Mini
dcf0aad852 Style cleanup:
- Sort local variable declarations.
- Protect a hand-formatted comment from indent(1).
- Use portable casts, even though this is machine-dependant code.
- Remove extraneous blank lines.
- Remove trailing newline.
- Use sigdelset(3), not SIGDELSET(9).

Requested by:	bde
2002-09-21 23:54:32 +00:00
Tim J. Robbins
0e2e10070d Delete stray reference to vsnprintf(). 2002-09-21 14:25:58 +00:00
Tim J. Robbins
c5604d0a50 Add implementations of the wprintf() family of functions, which perform
formatted wide-character output.
2002-09-21 13:00:30 +00:00
Garrett Wollman
0b32a813fa Initiate deorbit burn sequence for sysctl CTL_USER MIB branch.
Use the correct constants directly from sysconf() rather than calling
sysctl() to tell us the (still compiled-in) value.  Leave the CTL_POSIX1B
stuff alone for now (but I'd like to see this replaced with a single
structure returning all of the relevant information).

Implement all of the keys from 1003.1-2001 that we can.  Ensure that
the build will break if someone redefines an option constant to zero
without implementing the necessary presence-detection logic here.

(4 of 5)
2002-09-21 02:14:04 +00:00
Garrett Wollman
0d3bcc2e80 Make the threatened fts(3) ABI fix. FTSENT now avoids the use of the struct
hack, thereby allowing future extensions to the structure (e.g., for extended
attributes) without rebreaking the ABI.  FTSENT now contains a pointer to the
parent stream, which fts_compar() can then take advantage of, avoiding the
undefined behavior previously warned about.  As a consequence of this change,
the prototype of the comparison function passed to fts_open() has changed
to reflect the required amount of constness for its use.  All callers in the
tree are updated to use the correct prototype.

Comparison functions can now make use of the new parent pointer to access
the new stream-specific private data pointer, which is intended to assist
creation of reentrant library routines which use fts(3) internally.

Not objected to in spirit by: -arch
2002-09-21 01:28:41 +00:00
Tim J. Robbins
99330f8368 Remove unnecessary #include <assert.h>; it was used to bring in the
_DIAGASSERT macro on NetBSD, but we don't need it.
2002-09-21 00:29:23 +00:00
Archie Cobbs
ae8a4b2f36 Revert previous commit to unbreak world until we figure out the
right way to do it.
2002-09-20 15:43:26 +00:00
Tim J. Robbins
7591ae56ae Lock the file once per call and use the unlocked fgetwc()/fputwc() variants. 2002-09-20 13:25:40 +00:00
Tim J. Robbins
9260341650 Lock and unlock the file once per call and use the unlocked version of
ungetc() instead of having ungetc() recurse on the lock.
2002-09-20 13:23:26 +00:00
Tim J. Robbins
8f030a44b8 Introduce unlocked versions of fputwc() and fgetwc() called __fputwc()
and __fgetwc() which can be used when we know the file is locked.
2002-09-20 13:20:41 +00:00
Mike Barcroft
883738f287 Add restrict type-qualifier. 2002-09-20 08:24:01 +00:00
Jonathan Mini
4ed3c94b61 Don't peek into MD structures from MI code. The getcontext(3) and
setcontext(3) functions check the validify of the mcontext_t structs.
2002-09-20 08:13:21 +00:00
Archie Cobbs
f5f1272284 Fix a problem with the definition of HUGE_VAL causing the gcc warning
"cast increases required alignment of target type" on some platforms.

Reviewed by:	bde
2002-09-19 19:47:27 +00:00
Tim J. Robbins
b9aac30810 Implement the %ls and %lc conversions for printing wide character strings
and wide characters. These were already documented in the manual page,
with an entry mentioning that they were not implemented yet. The XSI
%S and %C synoyms have not been added.
2002-09-19 12:50:28 +00:00
Jacques Vidrine
7922d4cf1a Add forgotten newlines in debug messages. 2002-09-19 11:36:47 +00:00
Garrett Wollman
4b85f43b30 Return the correct environment name for 64-bit platforms in the
_CS_POSIX_V6_WIDTH_RESTRICTED_ENVS case.
2002-09-19 03:47:36 +00:00
Alfred Perlstein
bf4dc8772e Welcome the sem_ API to libc! 2002-09-19 01:14:08 +00:00
Alfred Perlstein
4f68734dc6 add a stub for pthread_cond_destroy. 2002-09-19 01:09:49 +00:00
Tim J. Robbins
0b7bc80226 Optimise the common case where no special encoding is in use (LC_CTYPE is "C"
or "POSIX", other European locales). Use __sgetc() and __sputc() where
possible to avoid a wasteful lock and unlock for each byte and to avoid
function call overhead.
2002-09-18 12:17:28 +00:00