Jeremy Soller
82084440ad
Support nightly-2025-10-03
2025-10-03 21:51:10 -06:00
Josh Megnauth
1d5179eb71
Const calculate buffer size for strerror
...
The current buffer size is hard set to 256. Using const evaluation, the
maximum buf size can be calculated at compile time.
2025-07-10 03:18:17 +00:00
bjorn3
8650ac293e
Fix building on targets with unsigned c_char
2025-03-30 16:35:29 +02:00
Jeremy Soller
90f30c5f51
Make NulTerminated::new return option
2025-01-09 13:33:56 -07:00
Darley Barreto
ae5a5256b4
Add missing functions to string.h
2024-12-28 22:46:45 +00:00
Peter Limkilde Svendsen
93b6374d1e
Reimplement memcpy() using slices, fix unaligned read/write, add test
2024-12-23 19:14:44 +00:00
Peter Limkilde Svendsen
2a7d01f02d
Add docs for string.h, add missing functions
2024-11-19 00:20:40 +00:00
Peter Limkilde Svendsen
864d5e4795
Use only one .cast_mut() in memmem()
2024-11-17 20:19:52 +01:00
Peter Limkilde Svendsen
6a765ed88f
Implement memmem()
2024-11-17 16:18:14 +00:00
Peter Limkilde Svendsen
41264dc8b1
Add NulTerminatedInclusive iterator, rewrite/fix strchr/wcschr
2024-10-22 22:12:24 +00:00
4lDO2
af6435e12d
Implement psignal and psiginfo.
2024-09-24 19:34:53 +02:00
Peter Limkilde Svendsen
0a23acd401
Implement iterators on pointers
2024-09-22 23:42:28 +00:00
Peter Limkilde Svendsen
a7137512fa
Use standard casing and mangling for internal errno
2024-03-01 00:25:42 +00:00
Peter Limkilde Svendsen
9093f6bc47
Use Cell representation for errno
2024-02-29 14:07:40 +00:00
Jeremy Soller
ab7e3da661
strsignal must return mutable char pointer
2023-09-09 09:22:26 -06:00
David Carlier
637dd22d3d
stdio: implements legacy cuserid proposal.
2023-04-05 22:17:09 +01:00
David Carlier
34f2fff983
strlcpy/strlcat api for portability's sake.
...
those functions differently than the strn* ones as
they do not pad with zero to remaining bytes but guarantees
a null terminator.
2023-03-24 09:44:33 +00:00
jD91mZM2
593925ceb4
Unambiguate all include guards
...
GNU binutils also uses _FNMATCH_H for a guard, maybe along others!
2020-06-29 11:34:51 +02:00
jD91mZM2
b8c50c7c64
Format
2019-08-04 19:05:45 +02:00
jD91mZM2
c7d499d4f2
Upgrade to the 2018 edition
...
I didn't think it'd be this useful first, but thank god for `cargo fix --edition`!
2019-08-04 19:05:45 +02:00
Mateusz Mikuła
63a1319e50
Cbindgen update
2019-07-10 10:08:39 +00:00
jD91mZM2
e84ea94dd0
Execute fmt.sh
2019-06-12 14:45:33 +02:00
Jason Hansel
a5409ecd36
Fix out-of-bounds error in strsignal
2019-06-10 10:25:59 -04:00
Mateusz Mikuła
d62db7b1b9
Add memrchr()
2019-05-11 13:49:46 +02:00
Alex Lyon
5bbce37789
string: add strnlen_s()
2019-04-26 20:36:37 -07:00
Mateusz Mikuła
1ebd8a3d72
Handle zero length for strerror_r
2019-04-24 17:42:28 +02:00
Jeremy Soller
7bde036031
Remove va_list submodule, format
2019-04-21 15:45:55 -06:00
jD91mZM2
6d4ac9dba8
Finally, get rid of all rust warnings
...
Just a small step along the way to reduce the massive wall of spam
every time you compile.
This was done partly automagically with `cargo fix`. The rest was me
deleting or commenting out a bunch of variables. Hope nothing was
important...
2019-04-21 21:12:16 +02:00
jD91mZM2
3a3fd3da39
Use the memchr crate
...
https://github.com/BurntSushi/rust-memchr is supposed to be a whole
lot faster :)
2019-04-21 19:09:37 +02:00
jD91mZM2
601cb43f6c
Merge branch 'strerror_r' into 'master'
...
Add POSIX strerror_r
See merge request redox-os/relibc!207
2019-04-21 15:06:17 +00:00
Mateusz Mikuła
c68a0d5678
Add POSIX strerror_r
2019-04-19 17:59:56 +02:00
Michal Z
89ca696f8e
Changed while loops to for
...
Changed while loops to for - https://gitlab.redox-os.org/redox-os/relibc/issues/128
2019-04-15 18:24:46 +02:00
Jeremy Soller
52669688bf
Fix issue of strcasecmp not showing up
2019-01-13 14:17:05 -07:00
Jeremy Soller
fe57754c34
Do not cast usize to isize in strncpy
2018-12-02 08:16:38 -07:00
Jeremy Soller
52fd4d7e83
Clippy fixes
2018-12-02 08:04:53 -07:00
Jeremy Soller
9325183b21
Fix strcat
2018-12-01 08:55:02 -07:00
Jeremy Soller
d66afa4586
Do not return mutable pointer from strsignal
2018-11-27 20:54:37 -07:00
Ian Douglas Scott
fdd966629d
Some type signature fixes found using script in #111
2018-11-25 20:58:02 -08:00
Jeremy Soller
0ac16556bc
Format
2018-11-25 10:34:42 -07:00
Jeremy Soller
ebffc977b2
Reduce warnings
2018-11-10 07:52:45 -07:00
jD91mZM2
0469c0c2c6
Add tests for memcmp and fix a teeny tiny bug
2018-10-09 16:47:57 +02:00
Benedikt Rascher-Friesenhausen
8e2b7c11b4
Replace i32 with c_int in memcmp
...
As per the comments from jD91mZM2 on the merge request.
2018-10-07 17:40:30 +02:00
Benedikt Rascher-Friesenhausen
e10a346356
Optimise memcmp for speed
...
I saw that in other parts of the `string` module iterations over `usize` were
used to increase iteration speed. In this patch I apply the same logic to
`memcmp`. With this change I measured a 7x speedup for `memcmp` on a ~1MB
buffer (comparing two buffers with the same content) on my machine (i7-7500U),
but I did not do any real world benchmarking for the change. The increase in
speed comes with the tradeoff of both increased complexity and larger generated
assembly code for the function.
I tested the correctness of the implementation by generating two randomly filled
buffers and comparing the `memcmp` result of the old implementation against this
new one.
I ran the tests and currently currently three of them fail:
- netdb (fails to run)
- stdio/rename (fails to verify)
- unistd/pipe (fails to verify)
They do so though regardless of this change, so I don't think they are related.
2018-10-07 10:25:19 +02:00
jD91mZM2
26d629674a
Implement strcasestr
2018-10-06 17:37:50 +02:00
jD91mZM2
baddbb98d5
Don't reinvent the wheel in strings.h
2018-10-05 19:33:41 +02:00
Jeremy Soller
7f14fcdee0
Remove c_str functions, replace with CStr
2018-09-24 21:08:29 -06:00
jD91mZM2
1e9dbfdf62
Use cbitset crate
2018-09-22 17:26:58 +02:00
Jeremy Soller
bab4e2896a
Format
2018-08-27 06:35:30 -06:00
Jeremy Soller
7ab700315d
Fix warnings and add c_str
2018-08-26 15:15:29 -06:00
Jeremy Soller
c20ce5ffed
Large reorganization of headers (WIP)
2018-08-26 08:11:35 -06:00