Commit graph

16 commits

Author SHA1 Message Date
drochner
3ca131bd2b deal with connect(2) returning EINPROGRESS/EALREADY/EISCONN on non-blocking
sockets (allowed by POSIX, but apparently not done usually on other OSes)
bump PKGREVISION
2010-08-06 19:21:26 +00:00
wiz
cdb2653a2f Update to 2.0.7:
Changes between 2.0.6 and 2.0.7 (22-Nov-2005 to 08-Jun-2006)

   *) Let AC_CHECK_PTH use "pth-config --libs --all" instead of just
      "pth-config --libs" to allow it to work under platforms like
      Solaris where additional libraries are required.
      [Ralf S. Engelschall]

  Changes between 2.0.5 and 2.0.6 (05-Oct-2005 to 22-Nov-2005)

   *) Add a missing "break" in pth_attr.c:pth_attr_ctrl().
      [Stefan Schippers <stefan@schippers.it>]

   *) Return an error if pth_kill() is called before pth_init().
      [Martin Kraemer <Martin.Kraemer@Fujitsu-Siemens.com>]

  Changes between 2.0.3 and 2.0.4 (03-Dec-2004 to 18-Feb-2005)

   *) Fix internal determination of maximum number in a size_t in
      the string formatter engine.
      [Ralf S. Engelschall]

   *) Add quotes around function names for AC_DEFUN in pth.m4 to avoid
      warnings about "underquoted definitions".
      [Stephane Loeuillet <stephane.loeuillet@cegetel.net>]

   *) Do not insist on writing to the source directory on "make install"
      in order to more closely follow GNU standards.
      [Bruno Haible <bruno@clisp.org>]

   *) Remove "*.bak" and "*~" files under "make distclean"
      instead of "make clean".
      [Bruno Haible <bruno@clisp.org>]

  Changes between 2.0.2 and 2.0.3 (12-Sep-2004 to 03-Dec-2004)

   *) Resurrect the old "make striptease" command by fixing the
      configure run-time in the stripped down source tree and fixing the
      list of source files.
      [Ralf S. Engelschall]

   *) The pth_uctx_save() and pth_uctx_restore() API functions
      unfortunately were broken by design because they are C
      _functions_. This leads to one more deadly nesting on the
      run-time stack which effectively caused the pth_mctx_restore()
      in pth_uctx_restore() to return to the end of pth_uctx_save()
      but then the control flow unfortunately returns to the
      pth_uctx_restore() caller instead of the pth_uctx_save() caller
      because the call to pth_uctx_restore() had already overwritten the
      run-time stack position where the original return address for the
      pth_uctx_save() call was stored.

      The only workaround would be to #define pth_uctx_save() and
      pth_uctx_restore() as C _macros_, but this then would require that
      lots of the GNU Pth internals from pth_mctx.c would have to be
      exported in the GNU Pth API (which in turn is not acceptable). So,
      the only consequence is to remove the two functions again from the
      GNU Pth API.
      [Ralf S. Engelschall, Stefan Brantschen <sbr@acm.org>]

   *) Enhance internal pth_mctx_save() if getcontext(3) is used for the
      machine context saving by better emulating the setjmp(3) style
      return code semantics.
      [Ralf S. Engelschall]

   *) Do not break in pth_msgport_find() if a message port
      was created with a NULL name.
      [Ralf S. Engelschall]

   *) Better error checking in pth_key_xxx() functions.
      [Ralf S. Engelschall]

   *) Added PTH_CTRL_FAVOURNEW control which allows the user
      to disable the favouring of new threads on scheduling
      to get more strict priority based scheduling behavior.
      [Ralf S. Engelschall, Vinu V <Vinu_V@mindtree.com>]

  Changes between 2.0.1 and 2.0.2 (13-Jul-2004 to 12-Sep-2004)

   *) Added hard syscall wrappers for send(2) and recv(2).
      [NetBSD pkgsrc patches]

   *) Internally handle errors returned from pth_event() in order
      to pass them upstream to the caller in pth_high.c functions.
      [Ralf S. Engelschall, NetBSD pkgsrc patches]

   *) Fix syscall wrapper for sendto(2).
      [NetBSD pkgsrc patches]

   *) Use "(char *)NULL" instead of plain "NULL" in last argument to
      execl(2) to avoid GCC 3.5's "warning: missing sentinel in function call".
      [Ralf S. Engelschall]

   *) Workaround Autoconf/m4 problems in pth.m4 by using "m4_define"
      instead of just "define" and no using m4_undefine at all.
      [Dr. Andreas Mueller <afm@othello.ch>]

   *) Avoid side-effects by defining _XOPEN_SOURCE only temporarily
      for inclusion of <poll.h> instead of permanently.
      [Graham Nash <gnash@ncube.com>]

   *) Workaround GCC 2.x and 3.5 (3.4 worked fine) macro parsing
      behaviour by using a pre-declared function pointer type "typedef
      int (*pth_event_func_t)(void *);" instead of using an inlined
      "int (*)(void *)".
      [Ralf S. Engelschall, Robert Anderson <RWA@sbcglobal.net>]

   *) Fixed prototype for pthread_attr_setschedparam(3) from
      to use a "const struct sched_param *" argument.
      [Rafael Ávila de Espíndola <rafael.espindola@ic.unicamp.br>]

  Changes between 2.0.0 and 2.0.1 (17-Feb-2003 to 13-Jul-2004)

   *) Fix handling/casting of "int (*)(void *)" callback functions.
      [Ralf S. Engelschall]

   *) Resolve symbol conflict in pth_string.c between pow10/round
      and GCC builtins.
      [Ralf S. Engelschall]

   *) Use GCC 3.3 option "-fno-strict-aliasing" (if available) under
      Autoconf option "--enable-debug" because mainly pth_mctx.c
      contains important and correct pointer casting constructs which
      are not acceptable in "strict aliasing" for GCC.
      [Ralf S. Engelschall]

   *) Fixed implementation so that --enable-pthread now correctly
      implies --enable-syscall-soft.
      [Steve Alstrin <Steve.Alstrin@NetIQ.com>, Ralf S. Engelschall]

   *) Replace some 0 by more politically correct NULL in pth_string.c
      [Ralf S. Engelschall]
2007-02-18 11:40:09 +00:00
agc
4a3d2f7ce2 Add RMD160 digests. 2005-02-23 22:24:08 +00:00
skrll
29cef5cc50 Enable wrappers for waitpid, recv, and send per PR 24704.
PR and patch from ITOH Yasufumi.

PKGREVISION++
2004-04-19 12:16:08 +00:00
wiz
0594acf27e Update to 2.0.0, supplied by skrll@netbsd.
Changes:
   *) Make pth_poll(3) more compliant to POSIX.1-2001/SUSv3 poll(2).
   *) Make pth_select(3) more compliant to POSIX.1-2001/SUSv3 select(2).
   *) Replaced pth_event_occurred() with pth_event_status().
   *) Add Autoconf option --with-fdsetsize=NUM for enlarging FD_SETSIZE.
   *) Added thread attribute PTH_ATTR_DISPATCHES.
   *) Added sub-API pth_uctx_* for user-space context switching.
   *) Add a Pth variant of the new POSIX pselect(2) function.
   *) Internally cleaned up the error handling macros.
   *) Added POSIX-compliant sanity checks for bad fds.
   *) Added pth_nanosleep() function.
   *) Allow a NULL name for pth_msgport_create()
   *) Completely rewrote the "hard syscall mapping".
   *) Added support to pth_poll(3) for POLLD{RD,WR}{NORM,BAND}.
   *) Fixed a long-standing termination bug in pth_exit(3).
   *) Upgraded to Autoconf 2.57, Shtool 1.6.2 and Libtool 1.4.3.
   *) Add optional support for OSSP ex based exception handling.
2003-05-02 11:49:47 +00:00
drochner
ca8f8a5b83 PTH_SYSCALL_HARD's fork() replacement didn't work on archs where the
system call's return values are postprocessed by the libc stub
(eg alpha).
Change pth to call libc's internal _fork(). This is only available
since NetBSD-1.5, older releases are SOL -- sorry, but we need something
working for 1.6.1.
We should audit all the PTH_SYSCALL_HARD plugins whether they neglect
libc assembler magic...
bump PKGREVISION
2003-02-04 17:31:16 +00:00
skrll
c8cce16f68 Improve error handling. Patches backported from pth -current.
PKGREVISION++

This fixes PR 19162 from Ingolf Steinbach.
2002-11-26 21:42:48 +00:00
drochner
ecf9fbf1a3 fix botch in a fd_set boundary check which broke uses of
select(0,0,0,0,&to) as finegrained delay
2002-10-23 10:04:15 +00:00
skrll
e3bf53861b Various updates and fixes that I've collected recently:
* Provide nanosleep(2) and usleep(3) wrappers.

	* Make sure sigprocmask syscalls are used in pth_system.

	* "Fix" FD_SET handling in the select(2) wrapper so that
	  mismatches between pth FD_SETSIZE and user program
	  FD_SETSIZE don't cause problems.

	* Update poll(2) wrapper to be more poll(2) like - in
          particular never return EINVAL for bad file descriptors
	  Thanks to Matthias Drochner for this.

	* Improve error handling in connect(2) wrapper so that we
	  don't confuse the scheduler. This fixes pkg/17944 from
	  Christian Biere (ChristianBiere at gmx dot de)

	* Introduce autoconf handling of the value of FD_SETSIZE
	  used by pth. If we have to hard code a value we might
	  as well make it easy to change and make the inclusion
	  of pth.h or pthread.h by a program that re-defines
	  FD_SETSIZE an error.

	  Inspired by pkg/17944.

	* Fix a compiler warning that I introduced a little while
	  ago.

	* Disable --enable-syscall-hard for non-NetBSD platforms
	  and for pre-1.6/m68k. Make a note of the PRs that need
	  fixing. This closes pkg/18236 from Klaus Heinz (k dot
	  heinz dot sep dot zwei at onlinehome dot de)

The FD_SETSIZE problems would be handled better if pth was changed
to use poll(2), and not select(2), internally.
2002-10-14 11:49:54 +00:00
jlam
e2afa97f51 Merge changes in packages from the buildlink2 branch that have
buildlink2.mk files back into the main trunk.  This provides sufficient
buildlink2 infrastructure to start merging other packages from the
buildlink2 branch that have already been converted to use the buildlink2
framework.
2002-08-25 18:38:05 +00:00
skrll
459f021fc9 Apply a fix to the initialization routine so that make test works with
--enable-syscall-hard.

Allow -O2 optimisation of i386 - the reason this was removed is somewhat
bogus.

Bump PKGREVISION.
2002-08-01 13:36:08 +00:00
dmcmahill
8446e4d6eb update to 1.4.1 from 1.4 This is a bugfix release.
- Internally make sure an invalid file-descriptor (integer not
  between 0 and (FD_SETSIZE-1) does not lead to any segfaults or
  other undefined behaviour. Instead an error is returned and errno
  is set to EBADF, similar to what the OS functions do. Especially
  pth_poll() now return with this error (instead of skipping the fd)
  if an fd in the "struct pollfd" is invalid.
  [Ralf S. Engelschall, Archie Cobbs <archie@packetdesign.com>]

- Correctly support PTH_FDMODE_NONBLOCK in pth_connect and pth_accept.
  [Archie Cobbs <archie@packetdesign.com>]

- Fixed typos in manual page.
  [Michael Schloh v. Bennewitz <michael.schloh@de.cw.net>,
   Takashi Ishihara <tishihara@ucdavis.edu>]

- For portability reasons changed definition of PTH_EXT_SFIO to 0/1
  instead of FALSE/TRUE because some external definitions use a
  casted value and hence make trouble on plain #if constructs.
  [Staehli Patrik <patrik.staehli@siemens.ch>]

- Fixed return value (number of occurred events) of pth_wait().
  [David Dureau <david.dureau@cea.fr>]

- Replaced thread-unsafe usage of a static struct iovec in
  pth_writev_ev() with a thread-safe stack/heap-based solution.
  [Ralf S. Engelschall, Mark Burton <markb@ordern.com>]

- Replaced antiquated PTH_FLAG_NOJOIN references with the correct
  PTH_ATTR_JOINABLE references in the manual page.
  [Takashi Ishihara <tishihara@ucdavis.edu>]

- Fixed a (not very subtle) bug in pth_writev_ev() that screwed up
  output if a partial write happened.
  [Mark Burton <markb@ordern.com>]

- Fixed static initializers PTH_BARRIER_INIT and PTH_COND_INIT.
  [Shawn Wagner <shawnw@speakeasy.org>]

- Typo fixes in pth.pod
  [<collver@linuxfreemail.com>]

- Upgraded to GNU shtool, version 1.5.4.
  [Ralf S. Engelschall]

- Fixed "make striptease": pth_string.c was not included and some
  commands which were removed at all (and this way causes syntax
  errors) will be now correctly commented out with ":" commands.
  [Paolo Bonzini <bonzini@pc-amo3.elet.polimi.it>]
2002-03-24 18:47:38 +00:00
skrll
3da1c4eaf9 When --enable-syscall-hard is specified actually provide wrappers for all
the syscalls that are documented as having wrappers. The ones missing were
wait4 and sigprocmask.

Patches have been sent to package maintainer.
2001-05-14 20:21:18 +00:00
wiz
dfb2d5edc6 Move to sha1 digests, and/or add distfile sizes. 2001-04-21 00:44:09 +00:00
agc
caf839dc17 Add distfile size, use sha1 digest 2001-04-18 10:36:28 +00:00
agc
d7d36b3561 + move the distfile digest/checksum value from files/md5 to distinfo
+ move the patch digest/checksum values from files/patch-sum to distinfo
2001-04-17 10:57:56 +00:00