Commit Graph

4205 Commits

Author SHA1 Message Date
Daniel Eischen
499c499c61 Fix MD macros to work for alpha. Without this fix, threads under alpha
seem to be totally broke.

MFC Candidate

Submitted by:	gallatin
2000-11-20 01:57:19 +00:00
Kris Kennaway
b05092e25a MAXPATHNAMELEN -> MAXPATHLEN
Submitted by:	ianm@kashmir.cit.nepean.uws.edu.au via OpenBSD
Obtained from:	OpenBSD
2000-11-19 11:29:58 +00:00
Kris Kennaway
7853d5d839 Don't suggest people use getpid() to construct temporary filenames;
point them to mkstemp() instead.

Obtained from:	OpenBSD (based on)
2000-11-19 10:30:42 +00:00
Kris Kennaway
dc3f2db745 Update the documentation to describe the new mktemp() family behaviour.
Also notes that mkstemp() first appeared in 4.4BSD (change obtained
from OpenBSD)

Reviewed by:	sheldonh
2000-11-19 10:21:32 +00:00
Ruslan Ermilov
251c176f41 mdoc(7) police: use certified section headers wherever possible. 2000-11-17 11:44:16 +00:00
Daniel Eischen
f17033e38d Fix a bug where a statically initialized condition variable
was not getting properly initialized in pthread_cond_signal()
and pthread_cond_broadcast().  Reportedly, this can cause
an application to die.

MFC candidate

Submitted by:	ade
2000-11-16 22:50:33 +00:00
Daniel Eischen
810888e2f8 Delete 4 lines of misleading/incorrect comments. 2000-11-16 19:15:56 +00:00
Ruslan Ermilov
55d8033fb4 Replace a dagger' sign with a double dagger' one.
The former looks ugly on grotty(1) devices.
2000-11-16 11:22:42 +00:00
Ben Smithurst
cb17760de7 Remove fullstops from the end of .Xr lines in SEE ALSO section. 2000-11-15 14:40:14 +00:00
Daniel Eischen
eb4463fde6 When entering the scheduler from the signal handler, tell
the kernel to (re)use the alternate signal stack.  In this
case, we don't return normally from the signal handler,
so the kernel still thinks we are using the signal stack.
The fixes a nasty bug where the signal handler can start
fiddling with the stack of a thread while the handler is
actually running on the same stack.

MFC candidate
2000-11-14 20:00:19 +00:00
Ruslan Ermilov
855ac919f1 Convert this from -man to -mdoc. 2000-11-14 16:47:54 +00:00
Ruslan Ermilov
b82f5db0ac Spell the des's name correctly. 2000-11-14 13:19:26 +00:00
Ruslan Ermilov
8e8536e1c2 Spell the sos's name correctly. 2000-11-14 13:09:12 +00:00
Ruslan Ermilov
b5c508fba3 Use Fx macro wherever possible. 2000-11-14 11:20:58 +00:00
Sheldon Hearn
b03c558b5a Change [Ii]t's to "It is" and "its" as appropriate. 2000-11-14 07:36:51 +00:00
Sheldon Hearn
d2d9aa87f5 Whitespace only: remove hard sentence breaks introduced in previous
commit and use a paragraph marker (Pp) instead of a blank line.
2000-11-14 07:35:02 +00:00
David E. O'Brien
fe17fef5d2 Bump the shared lib version. There seems to have been an incompatible
change committed to RELENG_4 where a bump there is now necessary.
We've got to go before RELENG_4 does.
2000-11-14 02:46:23 +00:00
Jacques Vidrine
0634de0c1f Fix bug introduced in previous commit: users obtained via compat mode
had uid, gid set to 0 if not otherwise specified!

Submitted by:	eivind
2000-11-13 21:22:50 +00:00
Nik Clayton
d4c5a1f678 Create the links for the reentrant time functions.
PR:		 docs/22644
Submitted by:	 andrew@ugh.net.au
2000-11-12 16:17:53 +00:00
Daniel Eischen
00e550955e Correct the logic for checking the emptiness of the waiting queue.
This fixes a potential problem where the file descriptors would not
be polled causing waiting threads to stay waiting.  Doh!

MFC candidate.
2000-11-11 22:20:36 +00:00
Andrzej Bialecki
2de021a4bc Correct description of KERN_PROC. Add description of KERN_PROC_ARGS. 2000-11-11 16:12:30 +00:00
Kris Kennaway
f1303ab4b2 Increase the size of the mktemp() filename space by dropping the PID from
the encoding and using the character set [a-zA-Z0-9]. This gives a total
of 62^6 = 56800235584 possible temporary filenames for the usual default
invocation of 6 X's (compared to as few as 52 possibilities for the
previous algorithm where up to 5 characters were wasted by the PID).

Update some apparently bitrotten comments to reflect reality.

Audited by:	eivind, freebsd-audit
Reviewed by:	freebsd-current (a while ago)
Originally submitted by:	Peter Jeremy <Peter.Jeremy@alcatel.com.au>
2000-11-10 23:27:55 +00:00
Alfred Perlstein
589d1374d4 remove outdated bugs, we actually do have aio_cancel support
as well as support for the field aio_offset in the aiocb structure.
2000-11-10 20:57:05 +00:00
Jacques Vidrine
61a33b7ca5 Fix passwd entry `prototypes' in compat mode. I broke this in revision
1.55 when importing nsswitch from NetBSD.

Reported by:	Naoki Kobayashi <shibata@geo.titech.ac.jp>
2000-11-10 19:11:14 +00:00
Ruslan Ermilov
726b61ab5f Avoid use of direct troff requests in mdoc(7) manual pages. 2000-11-10 17:46:15 +00:00
Dag-Erling Smørgrav
e828ada709 Use the documented (and historical) defaults. Centralize the decision logic
in order to avoid this bug in the future.

Submitted by:	se
2000-11-10 08:43:40 +00:00
Benno Rice
a2a9c8c79e Disable the end guard for now.
The test for failing the end guard was always triggering (and was reported as
such in compiler warnings).  This is a temporary band-aid until I can work
out what's really going on.

Reviewed by:	obrien
2000-11-10 06:15:24 +00:00
Benno Rice
2ef2c53036 Make setjmp work our way, as opposed to NetBSD's.
This file needs commenting still.

Submitted by:	luoqi
Reviewed by:	obrien
2000-11-10 06:10:28 +00:00
Benno Rice
71bb073d45 Don't always enable debugging for the network device code.
Reviewed by:	obrien
2000-11-10 06:06:55 +00:00
Daniel Eischen
b5a8a15c2f Don't needlessly poll file descriptors when there are no
file descriptors needing to be polled (Doh!).  Reported
by Dan Nelson <dnelson@emsphone.com>.

Don't install and start the scheduling timer until the
first thread is created.  This prevents the overhead of
having a periodic scheduling signal in a single threaded
program.  Reported by Dan Nelson <dnelson@emsphone.com>.

Allow builtin longjmps out of application installed
signal handlers without the need perform any post-handler
cleanup:

  o Change signal handling to save the threads interrupted
    context on the stack.  The threads current context is
    now always stored in the same place (in the pthread).
    If and when a signal handler returns, the interrupted
    context is copied back to the storage area in the pthread.

  o Before calling invoking a signal handler for a thread,
    back the thread out of any internal waiting queues
    (mutex, CV, join, etc) to which it belongs.

Rework uthread_info.c a bit to make it easier to change
the format of a thread dump.

Use an alternal signal stack for the thread library's
signal handler.  This allows us to fiddle with the main
threads stack without fear of it being in use.

Reviewed by:	jasone
2000-11-09 05:08:26 +00:00
Daniel Eischen
9a6b83bf3b Prevent the thread-safe version of kevent from getting
into an infinite loop when a timeout value is supplied
and the timeout expires.

Reported by:	Dan Nelson <dnelson@emsphone.com>
Reviewed by:	jasone, jlemon
2000-11-09 05:00:06 +00:00
Murray Stokely
40863aba32 Eliminate inconsistency where a value that contains only whitespace
confuses the parser.

Approved by:	jkh
2000-11-09 00:28:22 +00:00
Eivind Eklund
62ac643d25 Fix password clearing bug which prevented challenge/response from working.
Reviewed by:	jdp
2000-11-08 18:36:56 +00:00
Murray Stokely
f9f81f78d2 Added PROPERTY_MAX_VALUE and PROPERTY_MAX_NAME defines to libutil.h so
that applications know how large of a buffer they must allocate before
calling property_find().  Also added a $FreeBSD$ tag while I'm here.

Approved by:	jkh
2000-11-08 11:57:03 +00:00
David E. O'Brien
d045c51555 Use size_t rather than a 16-bit data type fo the length.
PR:	9350
Submitted by:	Danny J. Zerkel <dzerkel@columbus.rr.com>
2000-11-07 22:19:23 +00:00
Jordan K. Hubbard
5e25dc0f5c MFS: add ATA raid support for sysinstall 2000-11-06 23:15:01 +00:00
Ruslan Ermilov
a72b09f0aa Fixed typos. 2000-11-06 15:46:57 +00:00
Ruslan Ermilov
382114daf1 Fixed typo: .FR -> .Fa 2000-11-06 12:41:27 +00:00
Paul Saab
3d122d8e2c Honor the ip address given in the root-path dhcp option.
PR:	21743
Submitted by:	Brian Candler <B.Candler@pobox.com>
2000-11-05 14:55:09 +00:00
Kris Kennaway
ce41d42aeb More secure temporary filename. This needs to be revisited to use
mkstemp().
2000-11-02 10:14:09 +00:00
John Polstra
a9bda22cd6 At the beginning of pthread_mutex_lock(), call _thread_init() if
necessary.  This works around a bug in old versions of libgcc_r.a
which are statically linked into old executables.
2000-11-01 20:19:07 +00:00
Sheldon Hearn
22c8b05f4e Fix nits introduced in rev 1.9:
Remove single-space hard sentence break.
	Mark errno up as a Variable (Va).
2000-10-30 19:43:30 +00:00
Ruslan Ermilov
642cd09fb3 Added boolean argument to link searching functions, indicating
whether they should create a link if lookup has failed or not.
2000-10-30 17:24:12 +00:00
Jeroen Ruigrok van der Werven
f99e2564c2 Replace old sigaction struct declaration with the new one as present
in <sys/signal.h>.

This might be a shortterm fix until the manpage is updated towards
POSIX terminology.  And maybe not...

PR:		21542
Submitted by:	Ronald F. Guilmette <rfg@monkeys.com>
2000-10-30 14:27:18 +00:00
Jeroen Ruigrok van der Werven
cc5966e584 Correct incorrect information about the PATH used for exec*() calls.
PR:			21990
Partially submitted by:	Gerhard Sittig <Gerhard.Sittig@gmx.net>
2000-10-30 13:39:23 +00:00
Jeroen Ruigrok van der Werven
5714e85318 Whitespace only change: trim trailing whitespace. 2000-10-30 13:23:19 +00:00
Ruslan Ermilov
03453c5e87 A significant rewrite of PPTP aliasing code.
PPTP links are no longer dropped by simple (and inappropriate in this
case) "inactivity timeout" procedure, only when requested through the
control connection.

It is now possible to have multiple PPTP servers running behind NAT.
Just redirect the incoming TCP traffic to port 1723, everything else
is done transparently.

Problems were reported and the fix was tested by:
		Michael Adler <Michael.Adler@compaq.com>,
		David Andersen <dga@lcs.mit.edu>
2000-10-30 12:39:41 +00:00
David E. O'Brien
6f880b49b7 Alpha verions of the crt initialization and finalization files required
by the ELF ABI.
2000-10-30 05:21:08 +00:00
Munechika SUMIKAWA
725f35a7e5 Fix memory leak.
Obtained from:	KAME
2000-10-29 16:10:48 +00:00
Dag-Erling Smørgrav
d74a913b68 Use CHECK_FLAG 2000-10-29 15:56:10 +00:00
Dag-Erling Smørgrav
23109751fd Stricter error checking in the I/O functions. 2000-10-29 15:52:05 +00:00
Dag-Erling Smørgrav
1c2598aa2e Add CHECK_FLAGS, a macro for (safely) checking if a particular flag is set. 2000-10-29 15:45:31 +00:00
Eivind Eklund
e68aef6429 Back out previous commit (MLINK malloc.conf.5 -> malloc.3).
This did not work correctly with whatis(1).

Issue brought up by:	mpp
2000-10-29 13:20:24 +00:00
Dag-Erling Smørgrav
91c5104600 Document FTP_PASSIVE_MODE and FTP_PASSWORD.
PR:		docs/20626
Submitted by:	nik
2000-10-29 12:58:08 +00:00
Eivind Eklund
8b746a4d67 Add link malloc.conf.5 -> malloc.3 2000-10-29 09:59:35 +00:00
David E. O'Brien
ae7c8a2bb8 * Bring back the guts of crt{i,n}.S. This allows C++ exceptions to work
when using the egcs and gcc-devel ports, along with GCC built from stock
public FSF sources.  With out this change, FreeBSD will be removed from
the list of systems GCC 3.0 must be evaluated on before release.  With
the effort some of us put into getting FreeBSD on this list, we should
not turn this effort into a waste, else we might not be worth fighting
for in the future.  (note that Alpha and IA-64 versions of crt{i,n}.S
are needed)

* Switch from our own crt{begin,in} to those created from GCC's crtstuff.c.
This will allow us to switch to DWARF2 exceptions in the future, along with
staying in sync with any future GCC requirements.

* Break out our ELF branding bits into a seperate file.  Currently this
is now included by our crt1.c files (since this functionality was part of
our native crtbegin.c).  Later crtbrand.o will be merged in the creation
of crti.o.
2000-10-28 21:26:48 +00:00
Dag-Erling Smørgrav
7ca2f6ae1f Fix this my way. David had absolutely no call overriding MAINTAINER without
even giving me 24 hours to read his mail and find the bug.
2000-10-28 20:53:02 +00:00
David E. O'Brien
f18255c68b Install per function manpages so one doesn't mistakenly think we don't
have manpages for libfetch's functions.
2000-10-28 20:32:39 +00:00
David E. O'Brien
f03bce74fc Repeat after me, "check to see that a pointer isn't NULL before
dereferenceing it".  This fixes ``pkg_add -r''.
2000-10-28 20:27:11 +00:00
Mike Pritchard
beb64fb5ac Style & grammar fixes.
PR:		docs/22374, docs/13020
2000-10-28 18:37:37 +00:00
Hajimu UMEMOTO
7363d0e795 defined HAVE_IFM_DATA for (free|net|open)bsd
Submitted by:	JINMEI Tatuya <jinmei@isl.rdc.toshiba.co.jp>
Obtained from:	KAME Project
2000-10-28 17:54:19 +00:00
Jacques Vidrine
580ef74769 Explicitly initialize _pw_passwd. 2000-10-27 18:27:07 +00:00
Hajimu UMEMOTO
4a5af3d0cc Make RES_OPTIONS=inet6 work.
Basically PR22196, but slightly modified.

PR:	bin/22196
2000-10-27 12:34:52 +00:00
Dag-Erling Smørgrav
303fd73aa7 MFS: don't expect result code until you close the data connection 2000-10-27 11:37:21 +00:00
Brian Feldman
aa86455875 Fix problems people were having with large -O levels with GCC and
getting libutil/libcrypt to work properly.  I've determined that GCC
thinks it can inline all functions, including weak-symboled ones, if
it feels like it.

Create a new stub.c and move any stubs there to prevent inlining.
Thanks to jdp and William S. Duncanson for helping me finally find the
problem.
2000-10-27 01:19:02 +00:00
Gregory Neil Shapiro
d1ba25f456 Add a MAINTAINER= line so people know who to blame 2000-10-26 23:02:36 +00:00
Andrey A. Chernov
a91655018d For %c replace reference to asctime(3) with ctime(3) from which %c genetically
originates
2000-10-26 22:11:11 +00:00
Andrey A. Chernov
aabf7d45a4 Treat c_fmt field as compatibility placeholder 2000-10-26 16:20:57 +00:00
Andrey A. Chernov
c877745700 Force "%c" to be ctime-compatible
Submitted by:	ru
2000-10-26 16:07:04 +00:00
Andrey A. Chernov
f0b22c7b6a Force %c to be "%a %Ef %T %Y" to eliminate problems with bad c_fmt
Submitted by:	ru
2000-10-26 14:22:41 +00:00
Daniel Eischen
c418675341 Make pthread_kill() know about temporary signal handlers installed
by sigwait().  This prevents a signal from being sent to the process
when there are no application installed signal handlers.

Correct a typo in sigwait (foo -> foo[i]).
2000-10-25 11:46:07 +00:00
Archie Cobbs
c06992e558 Build the ISC library as libisc. This library comes as part of the
bind distribution, but until now was not being built as a separate
entity. For documentation, see these man pages:

assertions(3), eventlib(3), heap(3), logging(3), memcluster(3), tree(3).

Reviewed by:	jdp
2000-10-24 20:10:25 +00:00
Andrey A. Chernov
a2e0cef1d5 Describe %c better
Submitted by:	ru (with modifications)
2000-10-24 15:37:48 +00:00
Daniel Eischen
2fbba8b1b8 We use ___setjmp (non-signal saving) to setup a signal frame. When
adding a signal frame to a thread, be sure to label the context
correctly so we don't restore an uninitialized process mask.

Reported by:	kimc@W8HD.ORG and Andrey Rouskol <anry@sovintel.ru>
2000-10-22 18:35:11 +00:00
Dag-Erling Smørgrav
c7d40ef296 Use funopen() instead of fdopen(). This fixes three problems:
- ftpTimeout was not honored when reading actual data, as opposed to
   talking protocol

 - connection caching was broken because _ftp_cached_connect() would see
   the result of the transfer instead of the result of the NOOP.

 - if the RETR succeeded, but an error occurred later (as can happen
   when talking to a proxy), the error would not be detected.

There still remains to register an atexit(3) callback to close the cached
connection gracefully instead of just dropping it on the floor.
2000-10-22 12:07:28 +00:00
Dag-Erling Smørgrav
23fe6d7a4c If the scheme is HTTP or HTTPS, percent-escape whitespace in the document
part.

Submitted by:	green
2000-10-21 14:58:18 +00:00
Yoshihiro Takahashi
e30bdf6ba1 Use kern.disks sysctl on PC-98. 2000-10-21 10:08:57 +00:00
Nick Hibma
40a7a362c7 Correct the text on RETURN VALUES. 2000-10-20 00:27:56 +00:00
Ruslan Ermilov
f136389613 A failure to allocate memory for auxiliary TCP data is now fatal.
This fixes a null pointer dereference problem that is unlikely to
happen in normal circumstances.
2000-10-19 10:44:44 +00:00
Dag-Erling Smørgrav
8b9ba4668d Argh! Fix passive mode selection (again) 2000-10-17 19:01:18 +00:00
Peter Wemm
100063a74b Try and get libc_r to compile again on the alpha after deischen's commit 2000-10-17 06:31:40 +00:00
Nick Hibma
b425e31947 Sync with NetBSD:
K&R -> ANSI

Bugfix: 'Keep the bit position even when the report descriptor says POP.'

Add hid_use_report_desc, hid_parse_usage_page, hid_parse_usage_in_page.

Changed iface for hid_report_size.
2000-10-16 18:13:59 +00:00
Doug Rabson
84dc1ae7fc Return zero from setjmp() and _setjmp() for now. 2000-10-16 16:51:50 +00:00
Doug Rabson
6b7d87d9e1 Fix a couple of dumb mistakes. 2000-10-16 16:48:48 +00:00
Marcel Moolenaar
603fa52221 Fix RAW dependency violation on p6 between cmp and mov. 2000-10-15 20:33:41 +00:00
Brian Somers
9c8ec4f794 #include <sys/types.h> 2000-10-15 20:04:09 +00:00
Brian Somers
bcfa175910 Fix #include order
Spotted by: imura
2000-10-15 16:42:31 +00:00
Doug Rabson
94fb7ad620 Initial libc port for ia64. 2000-10-14 17:01:12 +00:00
Doug Rabson
ac5096139b CSU code for ia64. 2000-10-14 16:38:08 +00:00
John W. De Boskey
6bf02e51da Document the ptrace() PT_STEP request.
Add references to the newly added hardware debug register
support functions i386_clr_watch(3) and i386_set_watch(3).

Reviewed by:    Sean Eric Fagan <sef@kithrup.com>
                and no other response to the review request.
2000-10-14 04:01:39 +00:00
Daniel Eischen
b4145b0bfa Enable _PTHREADS_INVARIANTS until the recent libc_r changes are
shaken out.
2000-10-13 22:19:50 +00:00
Daniel Eischen
fbeb36e4bf Implement zero system call thread switching. Performance of
thread switches should be on par with that under scheduler
activations.

  o Timing is achieved through the use of a fixed interval
    timer (ITIMER_PROF) to count scheduling ticks instead
    of retrieving the time-of-day upon every thread switch
    and calculating elapsed real time.

  o Polling for I/O readiness is performed once for each
    scheduling tick instead of every thread switch.

  o The non-signal saving/restoring versions of setjmp/longjmp
    are used to save and restore thread contexts.  This may
    allow the removal of _THREAD_SAFE macros from setjmp()
    and longjmp() - needs more investigation.

Change signal handling so that signals are handled in the
context of the thread that is receiving the signal.  When
signals are dispatched to a thread, a special signal handling
frame is created on top of the target threads stack.  The
frame contains the threads saved state information and a new
context in which the thread can run.  The applications signal
handler is invoked through a wrapper routine that knows how
to restore the threads saved state and unwind to previous
frames.

Fix interruption of threads due to signals.  Some states
were being improperly interrupted while other states were
not being interrupted.  This should fix several PRs.

Signal handlers, which are invoked as a result of a process
signal (not by pthread_kill()), are now called with the
code (or siginfo_t if SA_SIGINFO was set in sa_flags) and
sigcontext_t as received from the process signal handler.

Modify the search for a thread to which a signal is delivered.
The search algorithm is now:

  o First thread found in sigwait() with signal in wait mask.
  o First thread found sigsuspend()'d on the signal.
  o Current thread if signal is unmasked.
  o First thread found with signal unmasked.

Collapse machine dependent support into macros defined in
pthread_private.h.  These should probably eventually be moved
into separate MD files.

Change the range of settable priorities to be compliant with
POSIX (0-31).  The threads library uses higher priorities
internally for real-time threads (not yet implemented) and
threads executing signal handlers.  Real-time threads and
threads running signal handlers add 64 and 32, respectively,
to a threads base priority.

Some other small changes and cleanups.

PR:		17757 18559 21943
Reviewed by:	jasone
2000-10-13 22:12:32 +00:00
Robert Watson
36fa62c01b o Introduce cap_from_text() and cap_to_text() implementations.
Reviewed by:	green
Obtained from:	TrustedBSD Project
Security audited by:	imp, green
2000-10-13 18:24:58 +00:00
Robert Watson
ab024bb02e o Simplify capability types away from an array of ints to a single
u_int64_t flag field, bounding the number of capabilities at 64,
  but substantially cleaning up capability logic (there are currently
  43 defined capabilities).

o Heads up to anyone actually using capabilities: the constant
  assignments for various capabilities have been redone, so any
  persistent binary capability stores (i.e., '$posix1e.cap' EA
  backing files) must be recreated.  If you have one of these,
  you'll know about it, so if you have no idea what this means,
  don't worry.

o Update libposix1e to reflect this new definition, fixing the
  exposed functions that directly manipulate the flags fields.

Obtained from:	TrustedBSD Project
2000-10-13 17:12:58 +00:00
Dag-Erling Smørgrav
cb5b735396 Use the right user name 2000-10-13 09:36:46 +00:00
Dag-Erling Smørgrav
1df2031c15 Document recent changes in URL parsing and proxy handling 2000-10-12 22:11:26 +00:00
Dag-Erling Smørgrav
bbc5af0c5a ftp.c needs _http_request() 2000-10-12 22:10:43 +00:00
Dag-Erling Smørgrav
1a16ed4c9c Rework proxy handling so that proxies can be specified as URLs.
As a side effect, remove a lot of duplicate and now redundant code.
2000-10-12 22:10:26 +00:00
Dag-Erling Smørgrav
59769ab192 Relax URL syntax so that schemeless URLs are supported. 2000-10-12 22:07:49 +00:00
Dag-Erling Smørgrav
be9e1d8a68 Add macros for the names of the URL schemes we support. 2000-10-12 21:59:22 +00:00