| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
Sponsored by: The FreeBSD Foundation
Notes:
svn path=/head/; revision=258070
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since so many programs don't check return value, always NUL terminate
the buf...
fix rounding when using base 1024 (the bug that started it all)...
add a set of test cases so we can make sure that things don't break
in the future...
Thanks to Clifton Royston for testing and the test program...
Approved by: re (hrs, glebius)
MFC after: 1 week
Notes:
svn path=/head/; revision=256130
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Austin Group issue #411 requires 'e' to be accepted before and after 'x',
and encourages accepting the characters in any order, except the initial
'r', 'w' or 'a'.
Given that glibc accepts the characters after r/w/a in any order and that
diagnosing this problem may be hard, change our libc to behave that way as
well.
Notes:
svn path=/head/; revision=255303
|
|
|
|
| |
Notes:
svn path=/head/; revision=255302
|
|
|
|
|
|
|
|
| |
A *.t file should provide Test Anything Protocol output so that it can be
run using the Perl "prove" tool.
Notes:
svn path=/head/; revision=255301
|
|
|
|
|
|
|
|
|
|
|
| |
This test cannot be converted to an sh(1) test because the syntax would be
invalid.
PR: 181129
MFC after: 1 week
Notes:
svn path=/head/; revision=254231
|
|
|
|
|
|
|
|
| |
These are like mkstemp() and mkstemps() but allow passing open(2) flags like
O_CLOEXEC.
Notes:
svn path=/head/; revision=254151
|
|
|
|
| |
Notes:
svn path=/head/; revision=253581
|
|
|
|
| |
Notes:
svn path=/head/; revision=253403
|
|
|
|
|
|
|
|
|
| |
of the standard text of the license which I did not realize prior.
Approved by: bushman
Notes:
svn path=/head/; revision=251867
|
|
|
|
|
|
|
|
|
| |
are not true as the files are actually under the BSD-2 license
Approved by: bushman
Notes:
svn path=/head/; revision=251818
|
|
|
|
|
|
|
| |
and float precision properly.
Notes:
svn path=/head/; revision=251598
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I initially thought wchar_t was locale independent, but this seems to be
only the case on Linux. This means that we cannot depend on the *wc*()
routines to implement *c16*() and *c32*(). Instead, use the Citrus
libiconv that is part of libc.
I'll see if there is anything I can do to make the existing functions
somewhat useful in case the system is built without libiconv in the
nearby future. If not, I'll simply remove the broken implementations.
Reviewed by: jilles, gabor
Notes:
svn path=/head/; revision=251314
|
|
|
|
|
|
|
|
|
| |
long double versions don't pass yet. (They are rather nit-picky cases,
so there's ongoing discussion with Bruce about whether it is worth the
performance cost.)
Notes:
svn path=/head/; revision=251293
|
|
|
|
|
|
|
|
|
|
|
| |
because different tests have different ideas about what it means to be
"close enough" to the right answer, depending on the properties of the
function being tested. In the process, I fixed some warnings and
added a few more 'volatile' hacks, which are sufficient to make all
the tests pass at -O2 with clang.
Notes:
svn path=/head/; revision=251241
|
|
|
|
| |
Notes:
svn path=/head/; revision=251120
|
|
|
|
| |
Notes:
svn path=/head/; revision=251119
|
|
|
|
|
|
|
|
|
|
|
| |
result depend on the cosine and sine of the imaginary part.
Small values are used in the new tests such that cosine and sine are well
defined.
Reviewed by: das
Notes:
svn path=/head/; revision=251053
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
are workarounds for various symptoms of the problem described in clang
bugs 3929, 8100, 8241, 10409, and 12958.
The regression tests did their job: they failed, someone brought it
up on the mailing lists, and then the issue got ignored for 6 months.
Oops. There may still be some regressions for functions we don't have
test coverage for yet.
Notes:
svn path=/head/; revision=251024
|
|
|
|
| |
Notes:
svn path=/head/; revision=250989
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The <uchar.h> header, part of C11, adds a small number of utility
functions for 16/32-bit "universal" characters, which may or may not be
UTF-16/32. As our wchar_t is already ISO 10646, simply add light-weight
wrappers around wcrtomb() and mbrtowc().
While there, also add (non-yet-standard) _l functions, similar to the
ones we already have for the other locale-dependent functions.
Reviewed by: theraven
Notes:
svn path=/head/; revision=250883
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If 'e' is used, the kernel must support the recently added pipe2() system
call.
The use of pipe2() with O_CLOEXEC also fixes race conditions between
concurrent popen() calls from different threads, even if the close-on-exec
flag on the fd of the returned FILE is later cleared (because popen() closes
all file descriptors from earlier popen() calls in the child process).
Therefore, this approach should be used in all cases when pipe2() can be
assumed present.
The old version of popen() rejects "re" and "we" but treats "r+e" like "r+".
Notes:
svn path=/head/; revision=250827
|
|
|
|
| |
Notes:
svn path=/head/; revision=250825
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Words in shell script are separated by spaces or tabs independent of the
value of IFS. The value of IFS is only relevant for the result of
substitutions. Therefore, there should be a space between 'wordexp' and the
words to be expanded, not an IFS character.
Paranoia might dictate that the shell ignore IFS from the environment (even
though our sh currently uses it), so do not depend on it in the new test
case.
Notes:
svn path=/head/; revision=248987
|
|
|
|
|
|
|
|
|
|
|
|
| |
routines provide write-only stdio FILE objects that store their data in a
dynamically allocated buffer. They are a string builder interface somewhat
akin to a completely dynamic sbuf.
Reviewed by: bde, jilles (earlier versions)
MFC after: 1 month
Notes:
svn path=/head/; revision=247411
|
|
|
|
|
|
|
|
|
|
|
|
| |
names, unnecessary casts)
- Change type of boolean variable from char to bool
Suggested by: jhb, zont, jmallett
Reviewed by: cognet
Approved by: cognet
Notes:
svn path=/head/; revision=246206
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
with the user's namespace.
- Correct size and position variables type from long to size_t.
- Do not set errno to ENOMEM on malloc failure, as malloc already does so.
- Implement the concept of "buffer data length", which mandates what SEEK_END
refers to and the allowed extent for a read.
- Use NULL as read-callback if the buffer is opened in write-only mode.
Conversely, use NULL as write-callback when opened in read-only mode.
- Implement the handling of the ``b'' character in the mode argument. A binary
buffer differs from a text buffer (default mode if ``b'' is omitted) in that
NULL bytes are never appended to writes and that the "buffer data length"
equals to the size of the buffer.
- Remove shall from the man page. Use indicative instead. Also, specify that
the ``b'' flag does not conform with POSIX but is supported by glibc.
- Update the regression test so that the ``b'' functionality and the "buffer
data length" concepts are tested.
- Minor style(9) corrections.
Suggested by: jilles
Reviewed by: cognet
Approved by: cognet
Notes:
svn path=/head/; revision=246148
|
|
|
|
|
|
|
|
|
|
|
| |
with the respective regression test.
See http://pubs.opengroup.org/onlinepubs/9699919799/functions/fmemopen.html
Reviewed by: cognet
Approved by: cognet
Notes:
svn path=/head/; revision=246120
|
|
|
|
|
|
|
| |
Usage of dup(), mkstemp() and unlink() needs <unistd.h>.
Notes:
svn path=/head/; revision=244038
|
|
|
|
|
|
|
| |
Found by: clang
Notes:
svn path=/head/; revision=243346
|
|
|
|
|
|
|
|
| |
Approved by: cperciva
MFC after: 1 week
Notes:
svn path=/head/; revision=241844
|
|
|
|
|
|
|
| |
Formerly, loops caused nftw() to abort the traversal with ELOOP.
Notes:
svn path=/head/; revision=239160
|
|
|
|
|
|
|
|
| |
old and new, check the sign bits of both the remainder and the
quotient.
Notes:
svn path=/head/; revision=233974
|
|
|
|
| |
Notes:
svn path=/head/; revision=231984
|
|
|
|
|
|
|
| |
in this directory.
Notes:
svn path=/head/; revision=230115
|
|
|
|
|
|
|
| |
as double, similar to r178141.
Notes:
svn path=/head/; revision=230114
|
|
|
|
|
|
|
| |
wider than double. Thanks to Ian Lepore for catching the bug.
Notes:
svn path=/head/; revision=230102
|
|
|
|
|
|
|
| |
Add some $FreeBSD$ tags so svn will allow the commit.
Notes:
svn path=/head/; revision=228975
|
|
|
|
|
|
|
| |
in parent and child processes after a fork.
Notes:
svn path=/head/; revision=227522
|
|
|
|
| |
Notes:
svn path=/head/; revision=226605
|
|
|
|
| |
Notes:
svn path=/head/; revision=226603
|
|
|
|
|
|
|
|
| |
long doubles. Thanks for clusteradm (simon) for making the needed
hardware available.
Notes:
svn path=/head/; revision=226602
|
|
|
|
|
|
|
| |
I wrote these ages ago, but they've been failing until now.
Notes:
svn path=/head/; revision=226378
|
|
|
|
| |
Notes:
svn path=/head/; revision=226377
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Formerly, in this case an error was returned but the pid was also returned
to the application, requiring the application to use unspecified behaviour
(the returned pid in error situations) to avoid zombies.
Now, reap the zombie and do not return the pid.
MFC after: 2 weeks
Notes:
svn path=/head/; revision=223907
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Of course, strerror_r() may still fail with ERANGE.
Although the POSIX specification said this could fail with EINVAL and
doing this likely indicates invalid use of errno, most other
implementations permitted it, various POSIX testsuites require it to
work (matching the older sys_errlist array) and apparently some
applications depend on it.
PR: standards/151316
MFC after: 1 week
Notes:
svn path=/head/; revision=220376
|
|
|
|
|
|
|
|
| |
these tests some day, but in the mean time, they're a useful sanity
check for future changes.)
Notes:
svn path=/head/; revision=219362
|
|
|
|
| |
Notes:
svn path=/head/; revision=216223
|
|
|
|
|
|
|
| |
that it always returns the same nonzero value.
Notes:
svn path=/head/; revision=216222
|
|
|
|
| |
Notes:
svn path=/head/; revision=216221
|