Commit Graph

559 Commits

Author SHA1 Message Date
Jerome Duval e634025c06 unistd.h: added noreturn attribute on _exit() 2012-10-27 19:50:26 +02:00
Matt Madia 173f54f147 Updated copyright in headers. No functional change. 2012-07-19 18:14:06 +00:00
Oliver Tappe c9ce04c45e Fix warnings about MB_LEN_MAX being redefined.
* in our limits.h, move #include_next of GCC's limits.h to the end such
  that things defined in it will not disturb our own definitions
2012-02-26 22:45:16 +01:00
Oliver Tappe 752527a8fe Cleanup: correct variable name in mbrtowc() signature. 2012-02-07 21:43:00 +01:00
Oliver Tappe b7417fbec1 Switch wchar from glibc to our own implementations. 2012-01-07 22:02:48 +01:00
Jérôme Duval 90b92dab5c added memrchr to string.h, guarded by __USE_GNU. Also guards strchrnul.
Original patch by Dario Casalinuovo.
BUG: Ticket #8265
2012-01-05 00:17:41 +01:00
Oliver Tappe ec99f3b2a6 Adjust mbstate_t to embed the state of the ICU converter.
* make room in mbstate_t for containing an ICU-converter's state
  (well, in fact the whole converter object)
* adjust libroot's locale add-on to clone converters into a given
  mbstate_t directly
* adjust ICUThreadLocalStorageValue to contain the converter pointer
  instead of a converter-ID (if the converter is related to an
  mbstate_t, it points into the mbstate_t).
* adjust users of converters to directly use converter pointers
  instead of ICUConverterRef
* drop now unused ICUConverterManager and ICUConverterRef
* update gcc4 optional package

This brings our multibyte implementation into a fully working state,
both non-ascii and non-8-bit characters can now be handled normally
in the Terminal, i.e. this finally fixes #6276.

N.B.: Since the size of mbstate_t has changed, everything (including
the compiler!) needs to be rebuilt.
2011-12-15 13:18:11 +01:00
Oliver Tappe cfe553b378 Squash TODO: __STDC_ISO_10646__ is being defined now. 2011-12-12 17:27:41 +01:00
Jérôme Duval 86216323af Fixed math.h part of #2696
* added lgammal_r wrapper
* removed gamma_r and gammaf_r functions from math.h
2011-12-11 12:28:53 +01:00
Oliver Tappe 0f21cf0ca0 Define MB_LEN_MAX to 16.
* we follow glibc's example and allow 16 bytes as maximum multibyte
  character length (ICU's data currently shows an actual maximum
  of 8 bytes)
2011-11-22 17:40:45 +01:00
Oliver Tappe e0eb1d38c4 Let MB_CUR_LEN lookup the actual value.
* instead of yielding 1, MB_CUR_LEN now looks up the correct
  value in the ctype data provided by the locale backend
2011-11-22 17:32:39 +01:00
Oliver Tappe fa02fc6907 Adjust mbstate_t to what we need.
* we maintain the character count and the ID of the corresponding
  ICU converter in mbstate_t
2011-11-22 17:23:04 +01:00
François Revol 02c3d9f5e6 Rename some parameters to avoid "declaration of 'foo' shadows global declaration" warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 22:01:29 +00:00
Adrien Destugues a1f2a6b179 Add cfmakeraw. Like cf{get/set}{i/o}speed, it iisn't POSIx standard but is used
often enough and simple enough to write that we should allow it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-16 16:44:17 +00:00
Scott McCreary 3d01f69f9e Fixed open_memstream(), buf was void, opengroup.org shows that it should be char. Fixes #7905.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-10 19:14:49 +00:00
Ingo Weinhold b353a9a30a ANSI C doesn't like unnamed unions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-07-17 13:57:30 +00:00
Ingo Weinhold 24df65921b Merged signals-merge branch into trunk with the following changes:
* Reorganized the kernel locking related to threads and teams.
* We now discriminate correctly between process and thread signals. Signal
  handlers have been moved to teams. Fixes #5679.
* Implemented real-time signal support, including signal queuing, SA_SIGINFO
  support, sigqueue(), sigwaitinfo(), sigtimedwait(), waitid(), and the addition
  of the real-time signal range. Closes #1935 and #2695.
* Gave SIGBUS a separate signal number. Fixes #6704.
* Implemented <time.h> clock and timer support, and fixed/completed alarm() and
  [set]itimer(). Closes #5682.
* Implemented support for thread cancellation. Closes #5686.
* Moved send_signal() from <signal.h> to <OS.h>. Fixes #7554.
* Lots over smaller more or less related changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-12 00:00:23 +00:00
Oliver Tappe d9a26469df Fix #6969 (hopefully for real this time):
* move all the isw... functions from wchar.h to wctype.h (just following version 7
  of the POSIX base specs)
* remove all declarations from wchar.h that are in wctype.h, too


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41832 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 18:44:22 +00:00
Jérôme Duval db61366a55 Patch from Dhruwat Bhagat (bug #7537): Fix "'noreturn' function returns" warning on call to assert(0).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-21 13:15:46 +00:00
Oliver Tappe cb666277a7 Revert part of r41389 that injured binary compatibility (rightly pointed out by Axel)
* length of utsname members must stay at length of 32
This will work just the same for now. When using a DVCS yields longer revisions, we need to adjust AboutSystem to fetch the full revision directly from the ELF section '_haiku_revision' (as found in libroot.so or libbe.so).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41392 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-08 21:51:58 +00:00
Oliver Tappe 6250297a08 Switch haiku-revision from uint32 to string, as that's going to be required soon, no matter if we switch to Git or Mercurial
* increase _SYS_NAMELEN defined in sys/utsname.h to 128 to allow long(ish) revisions
* sHaikuRevision is now a static character array (in both libroot and kernel)
* adjust build tool set_haiku_revision to write the revision as string


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-08 20:02:42 +00:00
Jérôme Duval bee827e203 changed dirfd() to its POSIX signature, without const (see #4947).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-06 21:34:06 +00:00
Oliver Tappe b27cf34dc1 Close #6969 (warning about redundant declarations):
* drop function declarations from wctype.h which are already in wchar.h

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39917 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-21 23:13:47 +00:00
Axel Dörfler 138cfe065f * Changed IFM_GMASK to the same value as in FreeBSD.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-09 00:09:00 +00:00
Michael Lotz deb25b1cc2 Add a few commonly used macros for line state setting/getting.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39759 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-08 00:11:01 +00:00
Philippe Houdoin 42bd140546 Fix _SIZEOF_ADDR_IFREQ() macro definition: there is no ifreq type.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-06 11:33:00 +00:00
François Revol 917c4aeb8d ISO C and POSIX mandate _Exit() in stdlib.h to be the same as _exit().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-28 05:07:53 +00:00
Jérôme Duval 8f9cef36d1 added missing prototypes and moved some around.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39659 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-27 00:07:33 +00:00
Jérôme Duval 93ca791b70 * added math.h missing prototypes like log2f. This fixes #6802.
* whitespace cleanup and renamed log2() to radeon_log2 (conflicts with log2 in math.h)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 23:42:17 +00:00
Ingo Weinhold 25dc253d6a * Merged weak-symbols branch.
* Fixed trivial merge conflict in src/system/libroot/posix/locale/nl_langinfo.cpp
* Fixed gcc 2 compilation of src/system/glue/init_term_dyn.c.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-22 13:06:36 +00:00
Oliver Tappe bc3791e867 * add symbolic constants for the langinfo constants, as that's what
is required by the POSIX specs (and some perl tests rely on it)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-13 00:22:40 +00:00
Axel Dörfler d72ede75fb * We now use a FreeBSD compatible ifmediareq structure for SIOCIFMEDIA, and
SIOCSIFMEDIA.
* Made sure that the two media ioctls are actually forwarded to the driver.
* Added NetworkDevice.cpp to the build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39389 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-10 21:44:26 +00:00
Ingo Weinhold 7aff60b7de Patch by Paul Davey with minor style changes by myself: For gcc 4 (and clang)
define the HUGE_VAL and friends macros to the respective __builtin_*()
functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-05 13:20:52 +00:00
Scott McCreary 0fae873352 Updated posix headers to remove commas from copyright line, to match the preferred coding guidelines.
Cleaned up some header style violations, making sure there are two blank lines after the header guards.
This fixes the posix header part of #2191.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39288 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-03 21:46:47 +00:00
Ithamar R. Adema a85c91d6f0 * Fix setjmp/jmpbuf_t size so we can finally get to the KDL prompt
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-18 00:50:59 +00:00
Philippe Houdoin 7fab61455e Apply path by Roy Keene which add IN6_ARE_ADDR_EQUAL() macro specified in RFC 2292.
Issue detected while porting Tcl.
Thanks.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-14 17:26:59 +00:00
Axel Dörfler 14f487c4de * Removed the non-implemented O_TEMPORARY.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38963 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-13 07:24:14 +00:00
Scott McCreary 8f0c2a388c Removed definitions for O_BINARY and O_TEXT, and patched the few files that used them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-13 06:26:53 +00:00
Axel Dörfler 80c5b9b5ee * Added prototypes for getline(), and getdelim(). This fixes bug #6646.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-04 12:37:48 +00:00
Scott McCreary 88ff3bdb33 Fixed some variable names to fit coding style guidelines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-21 06:30:21 +00:00
Scott McCreary e4ca362903 Readded parameter names, taking them from the ones used at opengroup, except for sockatmark for which I used descriptor instead of "s".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-18 22:39:14 +00:00
Scott McCreary bb05c02ef9 Fixed a dummy argument conflict, this was detected when fixing #5784.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-18 17:26:55 +00:00
Scott McCreary e86eb77b1b Patch from kaliber to a the glibc strtold implentation.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-18 16:42:59 +00:00
Scott McCreary 8e19103a0f Applied patch from obache, this partially fixes #5784.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-18 16:34:30 +00:00
Oliver Tappe 338ddd836f Closing #6499:
* add missing getsubopt() POSIX-function
* added corresponding test


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38650 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-09-14 18:43:24 +00:00
Jérôme Duval 867b56657b use __haiku_addr_t instead of __haiku_uint32
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-14 11:58:02 +00:00
Jérôme Duval 5091a866ec To be validated as part of bug #6386. Update glibc regex to 2.11, headers/posix/regex.h included. This imposes some changes in some of our sources using the regex.h,
mostly bin tools and mail kit. The use of __USE_GNU macro is needed for instance when the expected regex implementation is the GNU one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-11 16:49:58 +00:00
François Revol 3d08ac9237 Add the fmemopen() and open_memstream() POSIX extensions to libroot. Those can be used to build FILE pointers to in-memory buffers, a possible use would be to make resources available to ported applications. Untested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37997 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-10 09:56:13 +00:00
Axel Dörfler 1f9c8c4576 * Changed the _SIZEOF_ADDR_IFREQ() macro such that it can be used how we are
using it - hopefully, that is actually correct (it's adopted from FreeBSD).
* Fixed bug that cut off the sockaddr_dl reported by the system, so that DHCP
  wouldn't work anymore (and ifconfig wouldn't show the actual MAC address
  anymore).
* Changed the listing code to actually pad to ifreq size, and leave the length
  of the sockaddr untouched.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-06 12:58:02 +00:00
Oliver Tappe 9d391816b7 * clearified that stime() has nothing to do with timezones
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-05 21:42:56 +00:00