Jeremy Soller
6ed37efaeb
Merge branch 'weak-symbols' into 'master'
...
Weak symbols
See merge request redox-os/relibc!260
2020-03-19 17:56:22 +00:00
Jeremy Soller
2e27cf525e
Work on adding cargo test capability
2020-03-10 20:57:07 -06:00
oddcoder
c2488b5094
Running ./fmt.sh
...
These files needs formating by the auto formatter and It keeps popping
up every time I format my own code.
2020-03-07 23:52:27 +02:00
oddcoder
04ea2f9397
Refactor Linker::Link
...
This patch does basically two things:
- First make `global` variable not public, And make it accessable via a
function `get_sym`.
- Isolate the procedure that collect global symbols into single function
that does that and call it `collect_syms`.
The motivation of this patch is the second one where this procedure is
extended, thus it needs a seamless way to access those symbols
2020-03-07 23:52:27 +02:00
oddcoder
7f8dc2f251
Add support for invoking ld.so via execve() and friends
...
Introduction:
The original implementation of `relibc_ld_so_start` assumes that
ld.so will always be invoked manually as in "/lib/ld64.so ./a.out"
The problem is regarding this snippet.
if sp.argc < 2 {
eprintln!("ld.so [executable] [arguments...]");
unistd::_exit(1);
loop {}
}
As such, In linux when user types "./a.out" he will recieve the message
ld.so [executable] [arguments...]
This patch makes use of AUXV, specifically AT_ENTRY. When invoking ld.so
manually, AT_ENTRY happens to be the entry point of ld.so. But when
running `./a.out` directly, AT_ENTRY becomes the entry point of `a.out`
this patch compares AT_ENTRY to the entry point of ld.so, if they are
equal only then it will assume that argv[1] is the real program and
adjust the stack, otherwise it will proceed with the stack unadjusted.
2020-02-24 11:56:09 +02:00
Tiago Lam
2bc667f71c
header/sys_un: Set sockaddr_un members to public.
...
Future commits will make use of this, in order to support AF_UNIX
sockets.
2020-02-06 08:21:12 +00:00
Jeremy Soller
662051a91b
Only call epoll_ctl once per descriptor, fixing vim on Redox
2020-01-28 20:15:01 -07:00
Jeremy Soller
4c4ce7ec03
Add Redox termios definitions
2020-01-27 21:01:59 -07:00
Jeremy Soller
2e5d4a4d25
Merge remote-tracking branch 'origin/truncate-n-mkfifo'
2020-01-20 11:17:15 -07:00
Peter Limkilde Svendsen
0b4b3cd55c
Use lossless type conversion in ctype.h
2020-01-20 17:57:56 +00:00
AdminXVII
884ec85838
Replace occurences of uninitialized with MaybeUninit
...
mem::uninitialized is deprecated, so move over the not-UB MaybeUninit.
2020-01-20 16:54:22 +00:00
Jeremy Soller
a3f7a174f6
WIP - implementation of dlfcn
2019-12-18 21:21:25 -07:00
Jeremy Soller
36eb561128
Format
2019-12-18 20:01:48 -07:00
Peter Limkilde Svendsen
74555698fb
Handle infinity and NaN in printf
2019-12-05 01:37:17 +00:00
Jeremy Soller
2ac349d2d2
Add msync function and stub for Redox
2019-12-01 10:58:47 -07:00
Andrzej J. Skalski
278a70c813
added ctime_r
2019-11-28 02:41:58 +00:00
Peter Limkilde Svendsen
0b2c3fe5ea
Implement wcsstr(), fix return type of wcslen()
2019-11-14 02:46:53 +00:00
Jeremy Soller
ae69586f20
Implement getrlimit on Linux and stub on Redox
2019-09-18 20:29:25 -06:00
Jeremy Soller
46a330ec9e
Fix compilation of sys/resource
2019-09-18 15:55:27 -06:00
Xavier L'Heureux
e8b8b7eb25
Fix format and disable stat check for access time
2019-09-17 21:23:07 -04:00
Xavier L'Heureux
64f93fe6e0
Implement the truncate function
2019-09-17 19:57:43 -04:00
Jeremy Soller
64dde1548c
Merge branch 'patch-2' into 'master'
...
sys/uio.h: include sys/types.h
See merge request redox-os/relibc!244
2019-09-15 19:34:43 +00:00
Peter Limkilde Svendsen
7fdd450e16
lcg48 refactor
2019-09-15 19:34:12 +00:00
Peter Limkilde Svendsen
a80ec357e3
Refactor of a64l and l64a
2019-09-15 19:33:29 +00:00
Matija Skala
81470916be
sys/uio.h: include sys/types.h
...
needed for ssize_t
2019-09-08 08:36:22 +00:00
Steve McKay
4859c222e7
Make program_invocation_name modifiable
...
libiconv expects program_invocation_name to be an lvalue
2019-08-17 12:35:43 -04:00
jD91mZM2
4f2a93ea90
Vast refactor of pwd.h, add getpwent/setpwent/endpwent
2019-08-12 09:58:11 +02:00
jD91mZM2
aeab6a986d
Fix a few GDB compilation issues
2019-08-12 09:30:05 +02:00
Xavier L'Heureux
5799555566
Remove print statements
2019-08-11 21:53:32 -04:00
Xavier L'Heureux
0a558de76c
Fix reference getting moved
...
The sigaction handler called map on an option, creating a pointer to a
move value. This in turned caused UB for signal handlers. Avoid using
pointers directly, and instead prefer references.
2019-08-11 20:47:18 -04:00
Xavier L'Heureux
225583230f
Test
2019-08-11 18:11:19 -04:00
Jeremy Soller
e7d19e2a58
Move SIG_IGN and friends to C in order to define them correctly
2019-08-08 20:06:38 -06: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
jD91mZM2
f389010fff
Initial ptrace compatibility for Redox OS
2019-08-04 19:05:45 +02:00
jD91mZM2
7f702720af
Fix header file generation for ptrace
2019-08-04 19:05:44 +02:00
jD91mZM2
43ff8801bc
Format
2019-08-04 19:05:44 +02:00
jD91mZM2
35c1d5210c
Implement the Once<T> synchronization structure
...
Not sure if I should add a RwLock for the ptrace state too...
2019-08-04 19:05:44 +02:00
jD91mZM2
e559a3e2e5
Stub for ptrace
...
It's happening...
2019-08-04 19:05:44 +02:00
Mateusz Mikuła
bd573fb7cc
Fix cbindgen for disabled headers
2019-07-31 12:39:28 +02:00
Jeremy Soller
f467791b12
Fix definition of SIG_ERR
2019-07-25 21:27:41 -06:00
jD91mZM2
cb63dec86f
Add missing SIG_DFL and SIG_IGN constants
2019-07-25 17:34:59 +02:00
Mateusz Mikuła
b599c453a0
Remove defines that are generated by new cbindgen from bits
2019-07-18 13:18:00 +02:00
jD91mZM2
a8280e8991
Implement wcstol, wcstod, and printf:ing wchars
2019-07-18 12:29:22 +02:00
jD91mZM2
7c99077248
Implement wcstok
2019-07-18 08:15:40 +02:00
jD91mZM2
a2c8cfb4a5
Implement CVec, an abstraction to return vectors from Rust
2019-07-18 06:40:23 +02:00
jD91mZM2
29b5b989eb
Format
2019-07-11 18:20:27 +02:00
jD91mZM2
1a0f72dad8
Fix CI & compatibility with older rust
2019-07-11 18:18:17 +02:00
jD91mZM2
57917c0e92
Fix various floating point issues in printf
2019-07-11 18:09:37 +02:00
Mateusz Mikuła
799c10073d
Fix sigaltstack
2019-07-10 14:01:43 +02:00