Commit graph

2626 commits

Author SHA1 Message Date
Dag-Erling Smørgrav ecc9135299 Commit a bunch of patches that have been accumulating:
- Fix the README to reflect the new status of the ftp code.
 - Change tons of 'if (xxx < 0)' to 'if (xxx == -1)'
 - Add two new interface functions
 - Fix the Makefile so it actually works (yay!)

Now the manpage is lagging even further behind... :( Next on the todo
list is to clean up the http code.
1998-08-17 09:30:19 +00:00
Doug Rabson 744857bc1c Update to use the new elf headers. 1998-08-17 08:47:19 +00:00
John Birrell b4869285da Remove support for NetBSD syscalls. 1998-08-17 03:46:10 +00:00
John Birrell 4f27f01e1d Remove the comment about how to get NetBSD syscalls since there are
now programs built on alpha that _must_ use FreeBSD syscalls to work.
1998-08-17 03:35:09 +00:00
Poul-Henning Kamp 38a0ff129f Add missing #include of <sys.types.h> 1998-08-15 20:53:34 +00:00
Poul-Henning Kamp 7a55a3c230 I have added the support for BIG5 encoding into libc/libxpg4/mklocale.
the diff is attached below. This is done on the 3.0 source-tree.
I have test this on 2.2-stable before, but I don't have a 3.0 machine
right now.

This patch is mainly to make libc support BIG5 encoding, thus add
zh_TW.BIG5 locale to 3.0.

Submitted by:	Chen Hsiung Chan <frankch@waru.life.nthu.edu.tw>
1998-08-15 12:51:49 +00:00
John Birrell 18381dac5f Build libkvm on alpha too. 1998-08-15 12:36:42 +00:00
Doug Rabson 36fe61fe12 Add an alpha machdep for kvm. The vatop functions are stubbed out for
now (mainly because I haven't ported them from the NetBSD crash dump
environment).

Obtained from: NetBSD
1998-08-15 12:12:22 +00:00
John Birrell f68e5c78bb Make the locally built and executed build tools in this directory
static to avoid them trying to use shared libraries before we're
ready. During the initial elf buildworld, the shared loader only
exists in the obj tree, so it can't be used.
1998-08-15 07:15:51 +00:00
John Polstra d89bd1ac0f Add missing initialization of the length variable passed to
getsockopt().  Use a separate variable for clarity, instead of
overloading an unrelated variable.
1998-08-12 20:29:29 +00:00
John Birrell bbf157fac4 Add extra initialisation code that is required for processes that
are started instead of init (pid = 1). This allows an embedded
implementation quite like VxWorks, with (possibly) a single threaded
program running instead of init. The neat thing is that the same threaded
process can run in a multi-user workstation environment too.
1998-08-10 01:24:22 +00:00
John Birrell 57eec98d62 If using FreeBSD syscalls, handle the syscalls that don't require
default asm code the same way as on i386.
1998-08-08 02:25:46 +00:00
John Birrell 2a957ed7cc Include FreeBSD's syscall.h if not using NetBSD syscalls. 1998-08-08 02:24:03 +00:00
John Birrell dc43d96540 Allow for the fact that NetBSD syscalls are no longer the default. Call
sigaltstack by default if using FreeBSD syscalls.
1998-08-08 02:20:24 +00:00
John Birrell 920ee4896e Make NetBSD compatibility conditional on NETBSD_SYSCALLS being defined.
This is no longer the default.
1998-08-08 02:18:07 +00:00
John Birrell 61020cc681 References to NetBSD syscalls changed to just a comment about what to
add to /etc/make.conf to use FreeBSD's libc with a NetBSD/Alpha kernel.

From now on, FreeBSD/Alpha is just FreeBSD.
1998-08-08 02:14:45 +00:00
John Polstra 757be9d291 Correct the description of skeyaccess(). It determines whether Unix
passwords are permitted, not whether S/Key passwords are permitted.

This manual page could use a good going over.
1998-08-05 23:42:10 +00:00
Bruce Evans 90afb6a523 Fixed bitrot in prototypes in synopsis. 1998-08-03 17:52:27 +00:00
Bruce Evans 30b854394a Changed prototype in synopsis to match prototype in <pthread.h>. 1998-08-03 16:54:51 +00:00
Bruce Evans 71101898e8 Fixed missing header in synopsis. 1998-08-03 16:29:31 +00:00
Bruce Evans 8023e3dd93 isnetworktty -> isnettty. ttyent.h has already gone through 3
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.
1998-08-03 15:35:41 +00:00
Alexander Langer 8ac3b85e63 The pthreads standard has been published. Change:
...is expected to conform to IEEE (``POSIX'') Std 1003.1c when it is
   published.
to:
   ...conforms to ISO/IEC 9945-1 ANSI/IEEE (``POSIX'') Std 1003.1 Second
   Edition 1996-07-12.

Discussed with:	jb
1998-08-03 00:58:37 +00:00
Alexander Langer b4ff1b7295 A style fix for my previous commit. 1998-08-02 23:07:25 +00:00
Alexander Langer 27aa2e8958 Fixed a race condition during the first lock/trylock of a statically
initialized mutex.  Statically initialized mutexes are actually
initialized at first use (pthread_mutex_lock/pthread_mutex_trylock).
To prevent concurrent initialization by multiple threads, all
static initializations are now serialized by a spinlock.

Reviewed by:	jb
1998-08-02 17:04:25 +00:00
Bruce Evans 92f896a9cc Fixed printf format errors. 1998-08-02 14:41:34 +00:00
Poul-Henning Kamp 1fbdc08dfe I've put together man pages for the pthread_cleanup, pthread_cond, and
pthread_mutex routines. I've also tweaked pthread_create.3 to point to
pthread_cleanup_push(3) and pthread_cleanup_pop(3).

PR:		7450
Submitted by:	Brian Cully <shmit@kublai.com>
1998-07-31 09:09:19 +00:00
Andrey A. Chernov 9f3a9c3a18 Print uid/gid as u_long per bde suggestion 1998-07-29 14:05:01 +00:00
Bruce Evans 5b632b56e5 Fixed disordering in previous commit. 1998-07-29 13:43:06 +00:00
Tim Vanderhoek 542f2aacfa Add missing period. We don't allow maternity leaves. 1998-07-29 05:13:39 +00:00
Jonathan Lemon 525187f914 u_int --> unsigned int, remove (now unneeded) <sys/types.h> 1998-07-28 15:22:51 +00:00
Jonathan Lemon 8d0517cffd oops, forgot to do ``cvs add'' first. 1998-07-28 03:39:04 +00:00
Jonathan Lemon f88a03565a Add wrappers for i386_*_ioperm, i386_vm86 so userland code does
not have to call sysarch() directly.
Added man pages for above, as well as sysarch()
1998-07-28 03:33:27 +00:00
Andrey A. Chernov e8f9ae6c6e cast arg to (long) to match format 1998-07-28 01:30:16 +00:00
Andrey A. Chernov dfb1b7aea6 Provide meaningful errno value on error return 1998-07-14 18:27:43 +00:00
Bruce Evans 37889b394a Changed to the C9x draft spelling of the (unsigned) integral type
suitable for holding object pointers (ptrint_t -> uintptr_t).
Added corresponding signed type (intptr_t).  Changed/added
corresponding non-C9x types for function pointers to match.  Don't
use nonstandard types to implement these types, and don't comment
on them in <machine/types.h>.
1998-07-14 05:09:48 +00:00
Dag-Erling Smørgrav 44bcb03a54 Forgot to remove base64.c from SRCS in the Makefile. 1998-07-12 22:37:45 +00:00
Dag-Erling Smørgrav f62e5228fd Base64 code (and the MIT copyright) moved to http.c
FTP STORe and APPEnd added.
FTP proxy support added (untested).
1998-07-12 22:34:40 +00:00
Dag-Erling Smørgrav 346298f0de FTP retrieve works. 1998-07-11 21:29:08 +00:00
Dag-Erling Smørgrav 8e3986ea36 Too many changes to list. Basically, FTP is nearly there and error
reporting is kinda sorted out. Now HTTP needs to catch up...
1998-07-11 18:56:01 +00:00
Bruce Evans 930a642372 Oops, fptrint_t still needs to be declared in <machine/profile.h> in the
!KERNEL case.  The kludge to get it declared in libc/gmon/mcount.c wasn't
sufficient because fptrint_t is used in <sys/gmon.h>.
1998-07-10 09:26:41 +00:00
Bruce Evans 2e480d34aa Added a kernel-only typedef (ptrint_t) giving an integral type that is
least unsuitable for holding an object pointer.  This should have been
used to fix warnings about casts between pointers and ints on alphas.

Moved corresponding existing general typedef (fptrint_t) for function
pointers from the i386 <machine/profile.h> to a kernel-only typedef
in <machine/types.h>.  Kludged libc/gmon/mcount.c so that it can
still see this typedef.
1998-07-10 02:27:16 +00:00
Dag-Erling Smørgrav 4ca1ab9434 Imported libfetch into the tree. It compiles, but there's still some
work to do. I especially need help with the man page.
1998-07-09 16:52:44 +00:00
Joseph Koshy 2177df3cd2 Correct wording on range of addresses examined by `msync(2)'.
PR: 7180
1998-07-09 06:16:22 +00:00
Dmitrij Tejblum 9b003a4c74 Add lockf(). 1998-07-08 15:42:57 +00:00
Dmitrij Tejblum abe2fe8a8b Make this look more FreeBSDish. 1998-07-08 15:38:06 +00:00
Dmitrij Tejblum f1f57565d4 This commit was generated by cvs2svn to compensate for changes in r37510,
which included commits to RCS files with non-trunk default branches.
1998-07-08 15:28:56 +00:00
Dmitrij Tejblum 6975deff55 An implementation of lockf() function call.
Obtained from:	NetBSD (author: Klaus Klein)
1998-07-08 15:28:56 +00:00
Peter Wemm 64a965e707 Replace my original asprintf() and vasprintf() hacks with something
more cleanly integrated with stdio.  This should be faster and cleaner
since it doesn't memcpy() the data into a seperate buffer.  This lets
stdio allocate and manage the buffer and then hand it over to the user.

Obtained from: Todd Miller <Todd.Miller@courtesan.com> via OpenBSD
1998-07-08 00:44:56 +00:00
Bruce Evans 6d31e616a0 Added a `build-tools' target for internal tools. 1998-07-07 01:51:18 +00:00
Poul-Henning Kamp 8a507b98ab fts_close calls free(sp), the ISSET(FTS_NOCHDIR) which is a macro that
references sp. The free needs to follow ISSET

PR:		7148
Reviewed by:	phk
Submitted by:	Ken Mayer <kmayer@freegate.com>
1998-07-03 08:21:05 +00:00
Eivind Eklund 38cf631922 Cross-reference to sysconf(3). 1998-06-30 22:56:39 +00:00
Poul-Henning Kamp 35e6b695d6 Allow /dev/null as path for the "/dev/mem" file, and assume that people
know what they're doing if they do that.  This will allow ps to use
the kvm_proc.c bits without having access to /dev/mem.

Fix kvm_proc.c to not need /dev/mem for access to argv/envp
1998-06-30 21:29:44 +00:00
Bruce Evans 9f15c7ece5 Fixed printf format errors. 1998-06-30 18:06:23 +00:00
Bruce Evans 65a87ccc7c Fixed print format errors. 1998-06-30 18:03:05 +00:00
Bruce Evans bcc58f6898 Fixed a printf format error. Didn't fix assumption that sigset_t is
integral.
1998-06-30 18:00:11 +00:00
Bruce Evans a7f8e53079 Fixed printf format errors. 1998-06-30 17:30:22 +00:00
Bruce Evans 2a29b52b98 Fixed scanf format errors. The error handling is not quite bug for bug
compatible.  I think small negative uids are handled compatibly but
other out of bounds ones are truncated differently for certain sizes of
uid_t.
1998-06-30 17:21:48 +00:00
Bruce Evans c6966b0c4a Fixed printf format errors. Don't assume so many things about time_t.
Obtained from:	partial merge of ADO version tzcode96h (was fully merged
                in 1.10 but backed out in 1.11; the FreeBSD code for %s
		was earlier, prettier but buggier).
1998-06-30 16:49:47 +00:00
Brian Somers 10d9142685 Fixes assorted problems with the history edit functions in libedit. This
affects sh, ftp (and others?).

Submitted by: Max Euston <meuston@jmrodgers.com>
PR:           6516
1998-06-27 16:10:40 +00:00
John Polstra fd898ba100 Extend the existing hackery to set the disk type to SCSI for the
"da" and "od" devices.  Formerly ESDI was used for them, causing
problems for fresh installations of CAM systems.
1998-06-27 02:01:25 +00:00
Guido van Rooij 7d0cc08e7f Fix btree problems. This passes regressions tests.
PR:	7009
Obtained from: http://www.sleepycat.com/update/patch.185.html, patches 1.2,
		1.3 and 1.4
1998-06-25 18:50:06 +00:00
John Birrell ff09ba5fbb Add the missing {} that caused the function to return ESRCH if it
had to wait for the thread to exit and if the caller didn't want the
thread exit status.
1998-06-25 00:04:21 +00:00
Brian Somers 0579bd7175 Add CUSEEME support. This has *not* been tested, nor
could I find anyone to test it, so please report any
problems to me.
1998-06-24 06:58:00 +00:00
Andrey A. Chernov 2ed2c53bd8 Fix keypad on/off for ^Z suspends by replacing reset_*_mode()
from libmytinfo
1998-06-19 16:12:41 +00:00
Andrey A. Chernov 7bc8e89840 Add check for non-NULL cur_term
Add #pragma weak for reset_*_mode() they will be replaced in libncurses
1998-06-19 16:09:20 +00:00
Peter Wemm 2f92c56cc3 preserve errno across the readlink() calls. There is no value in trashing
errno during a successful malloc() call.
1998-06-18 09:13:16 +00:00
John Birrell b9148b8a3e Don't allow a SIGCHLD to wake up a thread if the process has the default
signal handler installed for SIGCHLD. The ACE MT_SOCK_Test was hanging
as the result of being interrupted when it didn't expect to be.
1998-06-17 22:29:12 +00:00
John Birrell d989fc8faa If a thread is waiting on a child process to complete, the SIGCHLD
signal can arrive before the thread is woken from it's wait4. In this
case, don't return an EINTR, just set the thread state to running and
the wait4 wrapper will loop and get the exit status of the process.
1998-06-17 03:53:16 +00:00
Peter Wemm 02a93d74e0 Don't compile in the use of poll() when building libc_r. This isn't
so much a "fix", rather a bandaid to buy time to fix it properly
within the thread engine.
1998-06-14 11:25:46 +00:00
John Birrell 597035b4db If a short write, only loop if no error. 1998-06-14 09:36:14 +00:00
Bruce Evans ef2e5f62e3 Document EINVAL return value. 1998-06-14 08:22:05 +00:00
Peter Wemm 21cd354328 Understand elf library naming rules for libtermlib alias.
Don't do the libtermcap un-bump hack for anything but a.out
1998-06-12 15:57:59 +00:00
Peter Wemm f3f4b57ac9 Make nlist() understand elf unconditionally 1998-06-12 15:02:03 +00:00
John Birrell 0b99d9d8ac Add poll to the list of hidden syscalls so that it gets renamed. This
propagates a bug (that there is no poll wrapper in libc_r), but it
prevents GNU configure scripts from trying to use it in preference
to select. libc_r really needs to change it's wait interface to use
poll instead of select because poll is more a superset of select that
the other way around.

This should allow the Roxen web server to work out-of-the-box. It's
configuration intercae is kinda neat. The code isn't. Shiver. 8-)
1998-06-12 02:21:27 +00:00
John Birrell 06ca87e9f7 Update the caller's descriptor masks even if there are none ready for
I/O for those applications that don't believe the return value of zero as
meaning that THERE ARE *NO* DESCRIPTORS READY.
1998-06-12 02:17:18 +00:00
Peter Wemm bdf905f07c Sigh, mkdep doesn't know about all the CFLAGS to pass during depend
generation.
1998-06-11 10:39:32 +00:00
Peter Wemm ff55f42545 Remove components that would duplicate those in libc now that the
includes and interfaces have been merged with the 8.1.2 update.

This essentially leaves the isc/* files that named and named-xfer use.
It might be best to just compile them with .PATH in both cases rather than
bothering with libbind.
1998-06-11 09:06:54 +00:00
Peter Wemm 14b93edab3 Update the resolver parts to bind-8.1.2 level. I have not touched the
getXXXXbyYYYY() interfaces yet.

Obtained from: diff relative to bind-8.1.2 sources
1998-06-11 09:03:02 +00:00
John Birrell 8eb25828ad Check the access mode in the flags before waiting on a read or a write
that might never be possible if the file was not opened in the corrent
mode. This prevents a hang for bad programs. Why do people code like that?
1998-06-10 22:28:45 +00:00
John Birrell aef774b0d5 Remove SA_RESTART from the signal dispatch in user-space since this
seems to be tripping up a lot of applications.
1998-06-10 22:25:18 +00:00
John Birrell 3c165ef7b7 When doing a F_SETFL, read the flags back so that the ones stored
in the file descriptor table are exactly what the kernel knows subject
to the O_NONBLOCK flag being requested by the user.
1998-06-10 22:24:12 +00:00
John Polstra 63b7c21cc3 Move ftok() from libcompat to libc, so that it can be closer to its
friend shmget().

PR:		closes misc/6763
1998-06-10 16:20:21 +00:00
Daniel O'Callaghan 9b0662e646 Fix grammar, "null" -> "NUL" 1998-06-10 12:37:45 +00:00
Poul-Henning Kamp 1499abeef4 Spelling fixes.
PR:		6903
Reviewed by:	phk
Submitted by:	Josh Gilliam <josh@quick.net>
1998-06-10 12:34:27 +00:00
John Polstra 363e8996d7 This is a null commit to log the fact that I have done a repository
copy to bring these files into libc from libcompat.  I will enable
them and kill off the libcompat versions on the main branch soon.

PR:		step one toward closing misc/6763
1998-06-10 04:24:21 +00:00
Brian Somers dfcb634be3 Quieten gcc 2.8.1 1998-06-10 00:26:19 +00:00
Brian Somers 6c78a7b0e8 Cast pid_t to int for sprintf.
Pointed out by: Charlie Sorsby <crs@hgo.net>
1998-06-10 00:16:28 +00:00
John Birrell 627961e45f Add a commented out CFLAGS entry that can be uncommented to compile thread
lock debug into libc_r. I don't know if this is the best place to document
this, but at least it is recorded somewhere. 8-)
1998-06-09 23:25:13 +00:00
John Birrell ddc8afd422 Implement compile time debug support instead of tracking file name and
line number every time a file descriptor is locked.

This looks like a big change but it isn't. It should reduce the size
of libc_r and make it run slightly faster.
1998-06-09 23:21:05 +00:00
John Birrell a675022188 Add compile time debug instead of doing this all the time. Reduce the
time that a thread keeps the file descriptor table locked. In particular,
perform malloc/free calls outside the lock and handle the situation
where two threads can race to initialise the table entry for the same
file descriptor.
1998-06-09 23:16:53 +00:00
John Birrell 3411c10600 Add support for compile time debug. This is enabled if libc_r is built
with -D_LOCK_DEBUG. This adds the file name and line number to each lock
call and these are stored in the spinlock structure. When using debug
mode, the lock function will check if the thread is trying to lock
something it has already locked. This is not supposed to happen because
the lock will be freed too early.

Without lock debug, libc_r should be smaller and slightly faster.
1998-06-09 23:13:10 +00:00
John Birrell 74ebed9424 POSIX says that pthread_exit() is not allowed to be called from a
cleanup destructor, so trap this case to prevent me from being being
burnt again by applications that try to do this. With this change, an
application (like one using a mis-configured ACE) will exit the process
after displaying a message quoting the POSIX section that the application
has violated.
1998-06-09 23:08:41 +00:00
John Birrell 27949f44dc Add compile time thread lock debug support.
Add a thread specific flag to trap the case where pthread_exit() is
called from a destructor in violation of the Posix standard.
1998-06-09 23:02:43 +00:00
John Birrell 4bc711423a Remove __NETBSD_SYSCALLS from CFLAGS now that it is set in sys.mk. 1998-06-09 22:59:16 +00:00
John Birrell 0b0ae157f8 Rename calls when building libc_r. 1998-06-09 22:57:34 +00:00
John Birrell f4086bc0cb Make this thread-safe in both libc as well as libc_r. 1998-06-09 22:56:24 +00:00
John Birrell 9e0370f742 Rename when building libc_r. 1998-06-09 22:45:39 +00:00
John Birrell 929140ffab Add rename support for libc_r. 1998-06-09 22:43:34 +00:00
Bill Paul 55e07e869f Fix potential resource leak: when call to des_crypt_1() fails, remember
to destroy the RPC CLIENT handle before returning.
1998-06-09 17:38:33 +00:00
John Birrell 6fe173c87b Implement compile time thread lock debug. 1998-06-09 08:37:35 +00:00
John Birrell bc99dd746b Rename fstat as _thread_sys_fstat if being built into libc_r. 1998-06-09 08:35:42 +00:00
John Birrell 3b6533a024 Implement thread support for libc_r. Make the lseek syscall directly
to avoid recursive locking.
1998-06-09 08:34:35 +00:00
John Birrell 86af3ff9b0 Implement compile time debug mode for thread locks. 1998-06-09 08:32:23 +00:00
John Birrell 3d853e107e Add support for thread lock debug. No impact of the malloc code. 1998-06-09 08:30:32 +00:00
John Birrell f374bfcd3c Implement compile time debug support for spinlocks.
Simplify the atomic lock prototype, removing the lock value.

Delete the unlock prototypes that are not required.
1998-06-09 08:28:49 +00:00
John Birrell 7d24d0302f Delete the atomic unlock function since it is no longer required.
Simplify the atomic lock to just write a value of 1 to the lock instead
of taking the value passed by the caller (which just confused things).
1998-06-09 08:25:41 +00:00
John Birrell 3dcb4f7556 Atomic lock asm code for the alpha version of libc_r. 1998-06-09 08:21:55 +00:00
Brian Somers b5ce85fe32 Don't call PunchFWHole() ifdef NO_FW_PUNCH
Pointed out by: "Steve Sims" <SimsS@IBM.Net>
1998-06-06 21:52:37 +00:00
Steve Price e110cb41dd Fix this so that it compiles in the !__STDC__ case.
Also be consistent about usage of #if ...

Pointed out by:	bde
1998-06-06 18:52:43 +00:00
John Birrell 2d8a580416 Add a warning message for a thread locking against itself. This is
not supposed to happen, but I have seen bogus g++ code that causes
it.
1998-06-06 07:27:06 +00:00
John Birrell c6831395f4 Simplify the handling of thread specific data. Only track if a key
is allocated or not, rather than keeping a count and attempting to
know it it is in-use. POSIX says that once a key is deleted, using the
key again results in undefined behaviour.
1998-06-06 07:24:24 +00:00
John Birrell c359f976b4 Re-design the thread specific key structure. 1998-06-06 07:20:23 +00:00
John Birrell 717d1611f4 I got the last commit back to front. 1998-06-06 07:02:27 +00:00
Joseph Koshy 9c727d2ca9 Spelling corrections.
PR: 6868
Submitted by: Josh Gilliam <josh@quick.net>
1998-06-06 05:50:53 +00:00
Joseph Koshy aae2142e5f Spelling nits.
Pointed out by: Sue Blake <sue@welearn.com.au>
1998-06-06 04:56:13 +00:00
John Birrell 756534d117 Fix the signal behaviour for internal states which set the thread
state to running despite the SA_RESTART flag which is really just for
syscalls.
1998-06-05 23:31:55 +00:00
Andrey A. Chernov 0ea569ff6f Fix handling more than 1 char with non-C locale
Misc. cleanup
PR: 6825
Submitted by: Sergey Gershtein <sg@mplik.ru>
1998-06-05 09:49:51 +00:00
Joseph Koshy 5239c0a5dd Mention that tftpd(8) also uses syslog(3). 1998-06-05 09:20:19 +00:00
Andrey A. Chernov 15af1c9b5d Add missing uu_lock_txfr() prototype 1998-06-05 08:21:33 +00:00
Steve Price 32c2131395 Fix a bunch of spelling errors.
PR:		6856
Submitted by:	Josh Gilliam <josh@quick.net>
1998-06-04 21:06:07 +00:00
John Birrell 346406cd60 No longer need the architecture specific include from libc now that
NetBSD syscalls are defined in sys.mk if they are being used.
1998-06-03 08:55:20 +00:00
John Birrell ac4898ab0d If using NetBSD syscalls the rtprio syscall doesn't exist, so just
don't try to use it to set special priorities.
1998-06-03 08:12:00 +00:00
Joseph Koshy 70e8940332 Correct wrong claim about `telldir()' cookie lifetimes.
PR: 4043
Submitted by: Joe Orthoefer <j_orthoefer@tia.net>
1998-06-03 06:54:24 +00:00
Mike Smith d4a7e4ca5d Add a trivial mechanism for returning a useful default value if one is
available and the kernel MIB setting is zero.

Return the result from getpagesize() if the p1003_1b.pagesize MIB
value is zero.

Suggested by:		Joerg Schilling <schilling@fokus.gmd.de>
1998-06-01 20:58:03 +00:00
Atsushi Murai 89caae2932 Trim a domain part for wtmp as same as showed by "netstat -r".
Here is a some example for avoiding a confusion.

 It asssumes a logged host domain is "spec.co.jp". All
example is longer than UT_HOSTNAMELEN value.

   1) turbo.tama.spec.co.jp: 192.19.0.2  -> trubo.tama
   2) turbo.tama.foo.co.jp : 192.19.0.2  -> 192.19.0.2
   3) specgw.spec.co.jp    : 202.32.13.1 -> specgw

Submitted by:	Atsushi Murai <amurai@spec.co.jp>
1998-06-01 08:47:04 +00:00
John Birrell fca35cd32f I shouldn't do things early in the morning.
I shouldn't do things early in the morning.
[...]
I shouldn't do things early in the morning.
1998-06-01 02:14:34 +00:00
John Birrell 23c82db7a3 send and recv are wrappered in libc, so they shouldn't appear here. 1998-06-01 02:12:15 +00:00
John Birrell 8680cc3c47 Remove some syscalls that should have been renamed (libc_r doesn't need
to wrapper them) and add a couple that should have been there.
1998-05-31 23:53:50 +00:00
John Birrell 382306949d Add some missing syscall wrappers. 1998-05-31 23:48:30 +00:00
John Birrell 5d359b97bb Remove some stale code.
Pointed out by: Amancio
1998-05-31 23:47:06 +00:00
John Birrell d972680a31 Don't restart a syscall when a SIGCHLD is received by a thread waiting
on a child process.
1998-05-31 23:46:01 +00:00
Steve Price c3572d2769 Allow this to include from C++ programs.
PR:		2382
Submitted by:	Peter Jeremy <perer.jeremy@alcatel.com.au>
1998-05-31 20:12:06 +00:00
Bruce Evans 67b780b03b Fixed double slashes in pathnames. 1998-05-31 11:32:38 +00:00
Steve Price 3f58cad638 Several sources including Unix98 say that semctl's fourth
parameter is optional except where:
	cmd == {IPC_SET || IPC_STAT || GETALL || SETVAL || SETALL}

PR:		2448
Reviewed by:	bde
Submitted by:	Tim Singletary <tsingle@sunland.gsfc.nasa.gov>
Minor tweaks by: steve
1998-05-31 04:09:09 +00:00
Steve Price 5b32180784 Remove references to getvfsbytype. Also remove getvfsbyname
as it has its own manpage.

Discussed with:	bde
1998-05-30 18:20:37 +00:00
Brian Somers 46cf264a26 Add uu_lock_txfr() to transfer ownership of a successful
uu_lock() to another process.
1998-05-28 23:17:09 +00:00
Peter Wemm c4a04f5540 Turn on the rcsid storage so that it's easier to tell the difference
between libscrypt.a and libdescrypt.a
1998-05-28 12:52:03 +00:00
Peter Wemm c932f88612 If building and installing libdescrypt, do it first so that the symlinks
point to it rather than libscrypt.

This was how it was done prior to libscrypt being added in.  This should
stop more people getting burnt with the /usr/lib -> /usr/lib/aout
transition, and the same when the ELF libs come online.
1998-05-27 18:42:36 +00:00
Jordan K. Hubbard 3081c7cd68 Don't use absolute path.
Submitted by:	jhay
1998-05-27 07:39:05 +00:00
John Birrell 01029f8f17 Make a copy of the caller's iovec array, mallocing if necessary,
and modify that if the writev() syscall does not completely write
all bytes in a single call.
1998-05-27 00:44:58 +00:00
John Birrell b46dfe97ae Remove error check from call to set the file descriptor to non-blocking
instead of explicitly ignoring some errors. This allows for the case
where a device is naturally non-blocking.
1998-05-27 00:41:22 +00:00
Søren Schmidt cabb97dcbf ELF preparation step 2:
Move a.out libraries to /usr/lib/aout to make space for ELF libs.
Make rtld usr /usr/lib/aout as default library path.
Make ldconfig reject /usr/lib as an a.out library path.
Fix various Makefiles for LIBDIR!=/usr/lib breakage.

This will after a make world & reboot give a system that no
longer uses /usr/lib/*, infact one could remove all the old
libraries there, they are not used anymore.

We are getting close to an ELF make world, but I'll let this
all settle for a week or two...
1998-05-26 20:12:56 +00:00
Steve Price 14d8151513 Remove a couple style bugs from the code snippet that
slipped in on the previous commit.

Submitted by:	bde
1998-05-26 02:53:06 +00:00
John Birrell e5a8a007e1 When doing a blocking write, keep looping until all the bytes are
written without returning to the caller. This only occurs on pipes
where either the number of bytes written is greater than the pipe
buffer or if there is insufficient space in the pipe buffer because the
reader is reading slower than the writer is writing.
1998-05-25 21:45:52 +00:00
Steve Price de285a13cc Update code example to reflect current practice. 1998-05-25 21:42:51 +00:00
Steve Price e172f0e587 Allow setting of idle or realtime processing priorities per
login class.

PR:		6636
Submitted by:	Jason Young <doogie@forbidden-donut.anet-stl.com>
1998-05-25 03:55:23 +00:00
Atsushi Murai fb9cd36d0d Primary verison of NetBIOS over TCP/IP. Now you can connect Windows
DOMAIN as DOMAIN user through NAT function. See also RFC1002 for
futher detail of SMB structure.

Submitted by:	Atsushi Murai <amurai@spec.co.jp>
1998-05-24 03:03:10 +00:00
Bill Paul 65923d6bff The incorrect select() timeout calculation that I fixed in svc_tcp.c
also exists here (the timeout can expire much sooner than it's supposed
to).
1998-05-21 15:22:39 +00:00
Bill Paul 1ce4aec2b4 Change the sanity test here. It's not correct to assume that the record
size we receive here should fit into the receive buffer. Unfortunately,
there's no 100% foolproof way to distinguish a ridiculously large record
size that a client actually meant to send us from a ridiculously large
record size that was sent as a spoof attempt.

The one value that we can positively identify as bogus is zero. A
zero-sized record makes absolutely no sense, and sending an endless
supply of zeroes will cause the server to loop forever trying to
fill its receive buffer.

Note that the changes made to readtcp() make it okay to revert this
sanity test since the deadlock case where a client can keep the server
occupied forever in the readtcp() select() loop can't happen anymore.
This solution is not ideal, but is relatively easy to implement. The
ideal solution would be to re-arrange the way dispatching is handled
so that the select() loop in readtcp() can be eliminated, but this is
difficult to implement. I do plan to implement the complete solution
eventually but in the meantime I don't want to leave the RPC library
totally vulnerable.

That you very much Sun, may I have another.
1998-05-20 15:56:11 +00:00
David E. O'Brien 7863f660a2 Add new NetBSD FFS with FDISK partition ID 0xa9
Obtained from:	Frank van der Linden <frank@wins.uva.nl>
1998-05-19 11:15:44 +00:00
Bill Paul 0a11c79d42 Toss publickey.c in the attic and remove it from the Makefile.
If we have it in libc, we don't need it here.
1998-05-18 21:59:53 +00:00
Bill Paul 14afd12e8c Replace the getpublickey() stub with the real thing. 1998-05-18 21:59:15 +00:00
Bill Paul a6e95b4420 Improve DoS avoidance in RPC stream oriented transports. The TCP transport
uses readtcp() to gather data from the network; readtcp() uses select(),
with a timeout of 35 seconds. The problem with this is that if you
connect to a TCP server, send two bytes of data, then just pause, the
server will remain blocked in readtcp() for up to 35 seconds, which is
sort of a long time. If you keep doing this every 35 seconds, you can
keep the server occupied indefinitely.

To fix this, I modified readtcp() (and its cousin, readunix() in svc_unix.c)
to monitor all service transport handles instead of just the current socket.
This allows the server to keep handling new connections that arrive while
readtcp() is running. This prevents one client from potentially monopolizing
a server.

Also, while I was here, I fixed a bug in the timeout calculations. Someone
attempted to adjust the timeout so that if select() returned EINTR and the
loop was restarted, the timeout would be reduced so that rather than waiting
for another 35 seconds, you could never wait for more than 35 seconds total.
Unfortunately, the calculation was wrong, and the timeout could expire much
sooner than 35 seconds.
1998-05-18 16:12:13 +00:00
Joseph Koshy 53e85f8664 Add warning about interaction of S/Key and login(1) for users without S/Key
passwords attempting to invoke login(1) on a pty.

PR: 3289
1998-05-18 09:36:31 +00:00
John Birrell 307253bb9f This library builds from libc source, so it also needs to know what
syscall style libc is using otherwise the library can contain calls
(like issetugid) that you don't find out until you build X programs.
1998-05-18 04:41:07 +00:00
Joseph Koshy c38eceafa4 kill.1: Remove reference to obsolete sigvec(2) man page. Removed
self reference in sigaction(2) man page.

Submitted by: Josh Gilliam <josh@quick.net>
PR: 6617
1998-05-18 03:33:11 +00:00
Bill Paul a9352e90f0 Patch RPC library to avoid possible denial of service attacks as described
recently in BUGTRAQ. The set_input_fragment() routine in the XDR record
marking code blindly trusts that the first two bytes it sees will in fact
be an actual record header and that the specified size will be sane. In
fact, if you just telnet to a listening port of an RPC service and send a
few carriage returns, set_input_fragment() will obtain a ridiculously large
record size and sit there for a long time trying to read from the network.

A sanity test is required: if the record size is larger than the receive
buffer, punt.
1998-05-15 22:57:31 +00:00
Bill Paul 9c69f26836 Patch RPC library to avoid possible denial of service attacks as described
recently in BUGTRAQ. If a stream oriented transport fails to properly decode
an RPC message header structure where there should be one, it should mark
the stream as dead so that the connection will be dropped.
1998-05-15 22:53:47 +00:00
Andrey A. Chernov 59fcc4ce0f Low level use of 'vidattr()' can cause a NULL pointer to be
dereferenced.  This is because 'SP' is only initialized via 'newterm()'
(which is not required if you are going to interact with the 'terminfo'
database without using 'ncurses').

PR: 6648
Submitted by: Max Euston <meuston@jmrodgers.com>
1998-05-15 21:35:53 +00:00
David E. O'Brien 361854f773 Change an arbitarly hardcoded `10' to MAX_NO_DISKS, which is currently "20".
Otherwise can't see sd10 (obtained using wired down sd unit numbers),
reguardless of the number of actual disks you have.
1998-05-15 21:17:01 +00:00
John Birrell 4bf15af17e Remove a big hack after adding a small one to libc/gen/getcwd.c to
handle the lack of __getcwd syscall in NetBSD.
1998-05-15 12:01:06 +00:00
John Birrell efda37108b NetBSD doesn't have a __getcwd syscall, so set have__getcwd to `no'
when building libc with NetBSD syscalls.
1998-05-15 11:59:00 +00:00
John Birrell cfc1614a48 int -> long changes that reduce the diffs with the NetBSD version to
work in a 64-bit environment.
1998-05-14 21:45:18 +00:00
Andrey A. Chernov 01929df9e0 Remove reference to signanosleep 1998-05-14 14:39:58 +00:00
Peter Wemm f202e67dfe Nuke signanosleep() 1998-05-14 11:36:16 +00:00
John Birrell d788c4fb65 libtcl now builds (with lots of pointer to int cast warnings) on alpha. 1998-05-13 22:54:03 +00:00
John Birrell ae43c7299f Make -Werror i386 specific because gcc with -nostdinc on alpha belches
warnings about static inline functions that cause the build to fail.

And for some reason, alpha needs MD5. Find that out later!
1998-05-11 09:15:03 +00:00
John Birrell 9a6a1cbee4 Cast a pointer to a long, not an int and make the arg passed to the function
a long too (it does have a proper prototype).
1998-05-11 09:10:38 +00:00
John Birrell 36af80b1a0 Remove a 'const' because it was getting thrown away anyway. 1998-05-10 23:48:18 +00:00
John Birrell 43f3c8ed20 There is no alpha asm code like on i386, so all the functions that
the i386 builds with a __generic prefix need to have that stripped.
1998-05-10 23:46:01 +00:00
John Birrell adaa81ba92 Cast a pointer to a long, not an int before masking it. 1998-05-10 21:22:47 +00:00
John Birrell cc4473c104 Remove 'of type long' from a sentence talking about four 4-byte values
because that is wrong on alpha.
1998-05-10 21:21:01 +00:00
Bruce Evans 881b7b471b Fixed the usual missing dependencies on headers generated by rpcgen. 1998-05-10 15:54:22 +00:00
Bruce Evans ee4b699da3 Fixed the usual missing dependencies on headers generated by rpcgen.
Use rpcgen's -C option, although using it for non-headers breaks K&R
support.  A local copy of yp.h is built to avoid adding
-I/usr/include/rpcsvc to CFLAGS.  This version of yp.h differed from
<rpcsvc/yp.h> only in not declaring prototypes.

Fixed style bugs.
1998-05-09 15:10:53 +00:00
Brian Somers ec791cadb1 Add a BUGS section and describe a problem I've been having for
a few weeks now.
1998-05-09 14:45:06 +00:00
Bruce Evans 55554ef2c3 Simplified by using new yacc rules. 1998-05-08 06:43:07 +00:00
John Birrell 184fcab826 This is a hack to workaround source that is coded to use long variables
but also assumes that they are 32-bits. This is one place where I don't
think it is appropriate to change 'long' to 'int'. I don't see why the
code couldn't be fixed so that using natural long variables does the
right thing. It's spaggetti code so it'll take some effort. Obviously
NetBSD thought so too because they change 'long' to 'int32_t' etc
and left it at that. As a temporary measure FreeBSD/Alpha can use the
NetBSD code and put this on the list of things to fix.
1998-05-08 05:41:57 +00:00
John Birrell f9a8e5fafb Remote the NetBSD kludge for vfprintf.c 1998-05-08 05:17:11 +00:00
John Birrell 77af5d1ac8 Don't assign the va_list variable 'ap' directly to the argtable because
va_list is not a pointer on alpha. Instead, use the va_arg() macro
to return the address that is stored in the argtable.
1998-05-08 05:10:32 +00:00
John Birrell b2dd537249 Use the thread-aware errno definition all the time. 1998-05-05 22:07:02 +00:00
John Birrell 75831c5b8f Build the syscalls (in libc, not libc_r) with weak symbols so that
libpthread can override them as required.
1998-05-05 22:06:16 +00:00
John Birrell e659da100d Remove extern int errno and #include <errno.h> to get the proper definition. 1998-05-05 22:04:13 +00:00
John Birrell e095485cdb Remove leading underscores from the FILE lock functions that POSIX
specifies.
1998-05-05 22:02:29 +00:00
John Birrell 4c717fd74d Remove leading underscores for the functions (weak symbols here) that
POSIX defines.
1998-05-05 21:56:42 +00:00
John Birrell ffa54cc6bb The __set_ospeed() function is coded against the speed_t type declared
in termios.h, but it's prototype in termcap.h and the main file use
the underlying definition (which is now an int, not a long for
compatibility with NetBSD). Really termcap.h should use speed_t too,
but I guess that this might break sources that don't include termios.h
first.
1998-05-05 21:54:26 +00:00
John Birrell 9839f9695a Treat the lock value as volatile. 1998-05-05 21:47:58 +00:00
John Birrell f1daac6f22 In a threaded library, expect the lock field to be declared volatile,
so provide function prototypes that respect that, avoiding a gcc
warning that `volatile' is being thrown away.
1998-05-05 21:46:30 +00:00
Robert Nordier a55fccb456 Fix a few nits in quoted code fragments and elsewhere. 1998-05-04 23:16:50 +00:00
John Birrell ec7fa2a51e Force BOOTSTRAP mode all the time while the headers are broken on alpha
as the result of i386 changes.
1998-05-04 02:06:09 +00:00
James Raynard c52c933ddd Typo fixes 1998-05-03 22:59:47 +00:00
James Raynard b92f77cae9 Typo fix. 1998-05-03 22:50:14 +00:00
James Raynard 66c15901aa Pedantry (NULL -> NUL). 1998-05-03 22:42:45 +00:00
James Raynard e6488a0f2f Don't imply sigset_t == int. 1998-05-03 22:27:29 +00:00
Peter Wemm 8e3465ed9f Add libbind 1998-05-03 05:06:13 +00:00
Peter Wemm 17ee1b4919 Build libbind for named and friends (not installed in /usr/lib) 1998-05-03 05:04:21 +00:00
Peter Wemm 9e39714518 Resolve some unexpected differences when comparing with the 2.2 version.
One bug was relatively harmless (select's timeout had an uninitialized
tv_usec), the other I'm not so sure.. (neglected to catch select returns
less than zero).  Both of these were irrelevant on kernels with poll().
1998-05-02 15:51:54 +00:00
Peter Wemm c8d2fd6da8 Update libc dns code to 4.9.7-T1B level. This involved chopping out large
chunks of res_comp.c and replacing it with chunks of bind-8.1.1's resolver
code.  (There are no interface changes though)
The other parts are better bounds checking related.
1998-05-02 13:11:02 +00:00
John Birrell b1ad8d9155 Cleanup in the child, not the parent.
Submitted by: Tor Egge <Tor.Egge@idi.ntnu.no>
1998-05-02 03:42:20 +00:00
Brian Somers 8d41a9efa3 Go back to version 1.16 - it was correct the way it was.
Pointed out by:	bde
1998-05-01 19:41:12 +00:00
Bruce Evans daf5eba573 Fixed disordering and other style bugs in rev.1.50. 1998-05-01 15:46:06 +00:00
Brian Somers e79dc52bbf connect() returns -1 on error - not 0. 1998-05-01 01:16:39 +00:00
John Birrell 96efcebdfc Fix the incremental priority increment.
PR: bin/6467 Marino Ladavac <lada@pc8811.gud.siemens.at>
1998-04-30 21:50:29 +00:00
Andrey A. Chernov d1793ae420 Add reference to setlocale(3) 1998-04-30 16:11:50 +00:00
Andrey A. Chernov 271632b02b Add reference to catopen(3) 1998-04-30 16:07:54 +00:00
Andrey A. Chernov e3b0c2a695 Return -1 for invalid descriptor in catclose 1998-04-30 13:15:31 +00:00
Andrey A. Chernov e97ef24c18 If passed catgets descriptor is NULL or -1, return default string immediately 1998-04-30 12:25:05 +00:00
Andrey A. Chernov 9ad256ad65 Force loadType to 0 1998-04-30 11:39:08 +00:00
Andrey A. Chernov c897062234 Implement NL_CAT_LOCALE
Manpages cleanup
1998-04-30 11:06:12 +00:00
Andrey A. Chernov 1adba262d7 Prototypes/typedefs cleanup
Fix error return codes
1998-04-30 10:14:55 +00:00
John Birrell 9b7c9bc4f8 Oops, backout the previous change having confused my underscores.
__thread_create is a syscall that uses the default asm. It is
_thread_create that contains specific asm code, but that lives in
libpthread.
1998-04-30 10:02:44 +00:00
John Birrell 26dac90648 Change the description of errno to match the thread-aware implementation
from 3.0 on. With 3.0 being a major release, now is a good time to do
this.
1998-04-30 09:49:59 +00:00
John Birrell 3fece7a1aa Make cerror thread aware by calling __error() to get a pointer to the
thread-specific error variable. This change make libc use the same cerror
code that libc_r has been using.
1998-04-30 09:32:48 +00:00
John Birrell 68f87034f2 The syscall that creates a kernel thread is coming, but it doesn't use the
default syscall asm, so add it to NOASM. The other syscalls that manipulate
kernel threads use the default asm code, so they just get built
automatically.
1998-04-30 09:30:50 +00:00
John Birrell cf6229a854 Build __error.c into libc, but not libc_r. The weak symbol in the
file works with libpthread, but when built into libc_r which has a non-weak
symbol of the same name, the linker behaves unpredicatably and sometimes
links the wrong symbol. The linker behaviour is a byproduct of what
the program calls from object to object so it is like winning a lottery
if the program actually works. The odds are quite good - 95:1, I think.
We need a sure thing, though, so weak symbols can't be used instead
of renaming things.
1998-04-30 09:13:48 +00:00
John Birrell 7bb870ac66 Change the name of this source file so that libc_r builds it instead
of the one in libc that contains the weak symbol for __error. FreeBSD's
make accumulates paths to the point that it can find *anything*, possibly
including the car keys.
1998-04-30 09:04:10 +00:00
Jean-Marc Zucconi 5679c69d0f Resurrect exit.c
PR:		misc/6433
1998-04-29 22:43:18 +00:00
Andrey A. Chernov 0b5e953b91 Basic support for LC_MESSAGES 1998-04-29 22:39:56 +00:00
John Birrell ccd1da1333 Add spinlock. 1998-04-29 11:03:34 +00:00
John Birrell 4a027d50c7 Change signal model to match POSIX (i.e. one set of signal handlers
for the process, not a separate set for each thread). By default, the
process now only has signal handlers installed for SIGVTALRM, SIGINFO
and SIGCHLD. The thread kernel signal handler is installed for other
signals on demand. This means that SIG_IGN and SIG_DFL processing is now
left to the kernel, not the thread kernel.

Change the signal dispatch to no longer use a signal thread, and
call the signal handler using the stack of the thread that has the
signal pending.

Change the atomic lock method to use test-and-set asm code with
a yield if blocked. This introduces separate locks for each type
of object instead of blocking signals to prevent a context
switch. It was this blocking of signals that caused the performance
degradation the people have noted.

This is a *big* change!
1998-04-29 09:59:34 +00:00
John Birrell 312e185f9c Don't need wrappers for longjmp/setjmp anymore. 1998-04-29 09:40:51 +00:00
John Birrell 32664a7064 Remove empty files that were renamed some time ago. 1998-04-29 09:39:34 +00:00
John Birrell 1ce8c4dc49 Atomic lock source. 1998-04-29 09:36:03 +00:00
John Birrell 5178bcd1cf Stop renaming these in libc_r because wrappered versions don't make sense.
PR: i386/4826, bin/5953
1998-04-29 09:14:35 +00:00
John Birrell 72b42edfd4 Replace the threaded locking with spinlock calls for both threaded
and non-threaded programs. This makes malloc thread safe for linking
with libpthread and kernel threads.

Reviewed by: phk
1998-04-29 09:10:58 +00:00
John Birrell 96c76d66db Reference an external variable in threaded programs so that the
autoinitialiser gets linked in and therefore called before main().
1998-04-29 09:08:43 +00:00
John Birrell 7317e6b1fd Use signal() in both the threaded and non-threaded cases. 1998-04-29 09:06:13 +00:00
John Birrell f0f62729ee Stubs are required in libc so that it can be used with libpthread
(and kernel threads), but weak symbols and non-weak symbols of the
same name built into libc_r result in unpredictable linking.
1998-04-29 09:02:16 +00:00
David Greenman ec3a3b4594 Oops, revert part of a diff that wasn't supposed to have been committed. 1998-04-28 07:02:33 +00:00
David Greenman 214bed53a2 Cache the results of the ps_strings sysctl so that it doesn't have to be
redone for every call of setproctitle().
1998-04-28 06:59:14 +00:00
Poul-Henning Kamp b37727fff9 sigprocmask()' man page references sigmask()' in synopsis.
Note odd `sigmask()' line in synopsis.  `sigsetops(3)' is better suited
for `sigprocmask' and is already referenced from the manual page.
(`sigmask()' is useful for the older (& deprecated) `sigsetmask()' API).
PR:		6395
Reviewed by:	phk
Submitted by:	Joseph Koshy <koshy@india.hp.com>
1998-04-26 06:19:24 +00:00
Andrey A. Chernov 1e0b4d8238 Make asctime_r static if !_THREAD_SAFE to prevent namespace pollution and
prototype mismatch
1998-04-25 00:00:57 +00:00
Paul Traina 5a36b24aa2 Back out last change 1998-04-23 04:44:08 +00:00
Robert Nordier ac51e2822d Improve description.
Submitted by: Arne Henrik Juul <arnej@imf.unit.no>
1998-04-22 19:59:55 +00:00
Paul Traina d84b14105f Fix cabs and cabsf definitions to be prototypes. 1998-04-22 06:26:18 +00:00
Dima Ruban b4d829b84f indent 1998-04-20 22:13:50 +00:00
Poul-Henning Kamp 4f6eb9ceed Add a #ifdef _THREAD_SAFE around ctime_r 1998-04-20 10:09:37 +00:00
Andrey A. Chernov 53b8d408ff Describe timegm() 1998-04-20 00:52:32 +00:00
Dag-Erling Smørgrav 59bad7c53b Backed out lseek changes. 1998-04-19 22:20:32 +00:00
Brian Somers 9feab75ab7 o Support a compile-time -DNO_FW_PUNCH for portability
(and those of us that don't want the functionality).
o Don't assume sizeof(long) == 4.
Ok'd by: Charles Mott <cmott@srv.net>
1998-04-19 21:42:07 +00:00
Poul-Henning Kamp 3f643d87bb ctime_r and asctime_r are not implemented.
prototypes in time.h do not match POSIX.

PR:		6345
Reviewed by:	phk
Submitted by:	Dmitry Khrustalev <dima@xyzzy.machaon.ru>
1998-04-19 06:47:25 +00:00
Dag-Erling Smørgrav 9db4b478d6 Return EINVAL and do not changefile pointer if resulting offset is negative.
PR:		kern/6184
1998-04-18 19:24:22 +00:00
John Birrell af139b98d4 Allow a thread dump to report the thread's sigmask when in the
PS_SIGWAIT state.
1998-04-17 09:39:37 +00:00
John Birrell 334fa8f215 When in PS_SIGWAIT state, still call signal handlers and set errno
to EINTR.
1998-04-17 09:37:41 +00:00
Poul-Henning Kamp 4fe6f197e0 Backup out the last commit, it was already there.
Noticed by:	bde
1998-04-17 08:31:07 +00:00
Poul-Henning Kamp b881fb3d9c Manpages not installed
PR:		6327
Reviewed by:	phk
Submitted by:	Chia-liang Kao <clkao@cirx.org>
1998-04-17 07:26:51 +00:00
Brian Somers 5c570787fc Typo police 1998-04-17 00:59:15 +00:00
Andrey A. Chernov 3cfe146f65 Add some easy to implement XSI macros including attr_get 1998-04-15 23:13:36 +00:00
Peter Wemm 4fea76f539 Fix a nasty flaw as a result of using the arc4random() pre-seeding of
leading XXX's.  It could wrap an uppercase character through chars
like:  [ \ ] ^ _ `  in between Z and a.  The backslash and back tick
might be particularly nasty in a shell script context.  Also, since
we've been using upper-case generated values for a while now, go with
the flow and use them in the pathname search rotation.
1998-04-14 07:25:05 +00:00
John Birrell d60f0fa60d Change the FILE locking to be by FILE, not by the underlying fd as
it was. Add a FILE_WAIT state and queue threads waiting for a FILE
lock. Start using the sys/queue.h macros instead of the way that MIT
pthreads did it.

Add a thread name to the private thread structure and a non-POSIX
function to set this. This helps (me at least) when sending a SIGINFO
to a threaded process to get a /tmp/uthread.dump to see what the
<expletive deleted> threads are doing this time. It is nice to be
able to recognise (yes, I spell that with an 's' too) which threads
are which.
1998-04-11 07:47:22 +00:00
John Birrell ec216c2634 Add FILE locking stubs for libc.
Change the FILE locking to support kernel threads when linked with
libpthread (which you haven't see yet). This requires that libc become
thread-safe and thread-aware, testing __isthreaded before attempting
to do lock/unlock calls. The impact on non-threaded programs is minor.
This change works with libc_r, so it's the best compromise.
1998-04-11 07:40:47 +00:00