summaryrefslogtreecommitdiff
path: root/exec
AgeCommit message (Collapse)Author
2011-02-14Add comment about finish being called several timesSamuel Thibault
2010-09-14Protect exec from memory faultsSamuel Thibault
* exec/exec.c (load_section): Call i`hurd_safe_copyin' instead of `memcpy'. Handle error case. (check_gzip): Likewise. (check_bzip2): Likewise.
2010-09-14Fix compressed binaries executionSamuel Thibault
* exec/exec.c (check_gzip.zipread): Add `n' to `zipread_pos' to fix infinite loop. (check_bzip2.zipread): Likewise. (check_gzip): Set `file_data' and `file_size' fields after calling `finish' instead of before. (check_bzip2): Likewise.
2010-09-14Fix in-memory mappingSamuel Thibault
* exec/exec.c (map): When e->file_data is not NULL, return it plus `posn'. (prepare_in_memory): Call prepare_stream to clear stream positions.
2010-08-01Fix "make dist" in `exec'.Ludovic Courtès
* exec/Makefile (SRCS): Refer to `$(gzip-sources)' and `$(bzip2-sources)' instead of listing files individually. (gzip-sources, bzip2-sources): New variable. (gzip-objects, bzip2-objects): Derive from the above variables.
2009-12-26Fix exec shell check for really small filesSamuel Thibault
* exec/hashexec.c (check_hashbang): Set `e->error' to 0 before calling map(). On error, check `e->error' instead of `errno', and default `e->error' to ENOEXEC.
2009-12-21Fix duplicate oldtask port deallocationSamuel Thibault
* exec/exec.c (do_exec): Do not deallocate oldtask when newtask != oldtask before the `out:' label since it is done again after it.
2009-08-23Fixes long-standing random hang of exec.Samuel Thibault
* exec.c (finish): Set FILE_DATA and MAP_BUFFER members of E to NULL after freeing them.
2009-07-11Switch to the new ChangeLog style.Thomas Schwinge
* ChangeLog: Wipe out content, and add instructions about how to get it back. * auth/ChangeLog: Remove file. * benchmarks/ChangeLog: Likewise. * boot/ChangeLog: Likewise. * bsdfsck/ChangeLog: Likewise. * config/ChangeLog: Likewise. * console-client/ChangeLog: Likewise. * console/ChangeLog: Likewise. * daemons/ChangeLog: Likewise. * defpager/ChangeLog: Likewise. * doc/ChangeLog: Likewise. * exec/ChangeLog: Likewise. * ext2fs/ChangeLog: Likewise. * fatfs/ChangeLog: Likewise. * fstests/ChangeLog: Likewise. * ftpfs/ChangeLog: Likewise. * hostmux/ChangeLog: Likewise. * hurd/ChangeLog: Likewise. * include/ChangeLog: Likewise. * init/ChangeLog: Likewise. * isofs/ChangeLog: Likewise. * libcons/ChangeLog: Likewise. * libdirmgt/ChangeLog: Likewise. * libdiskfs/ChangeLog: Likewise. * libfshelp/ChangeLog: Likewise. * libftpconn/ChangeLog: Likewise. * libhurdbugaddr/ChangeLog: Likewise. * libihash/ChangeLog: Likewise. * libiohelp/ChangeLog: Likewise. * libnetfs/ChangeLog: Likewise. * libpager/ChangeLog: Likewise. * libpipe/ChangeLog: Likewise. * libports/ChangeLog: Likewise. * libps/ChangeLog: Likewise. * libshouldbeinlibc/ChangeLog: Likewise. * libstore/ChangeLog: Likewise. * libthreads/ChangeLog: Likewise. * libtrivfs/ChangeLog: Likewise. * login/ChangeLog: Likewise. * mach-defpager/ChangeLog: Likewise. * nfs/ChangeLog: Likewise. * nfsd/ChangeLog: Likewise. * pfinet/ChangeLog: Likewise. * pflocal/ChangeLog: Likewise. * proc/ChangeLog: Likewise. * release/ChangeLog: Likewise. * serverboot/ChangeLog: Likewise. * storeio/ChangeLog: Likewise. * sutils/ChangeLog: Likewise. * term/ChangeLog: Likewise. * tmpfs/ChangeLog: Likewise. * trans/ChangeLog: Likewise. * ufs-fsck/ChangeLog: Likewise. * ufs-utils/ChangeLog: Likewise. * ufs/ChangeLog: Likewise. * usermux/ChangeLog: Likewise. * utils/ChangeLog: Likewise.
2009-04-022009-04-03 Samuel Thibault <samuel.thibault@ens-lyon.org>Samuel Thibault
* exec.c (prepare): Call PREPARE_STREAM earlier to permit calling finish_mapping on E even after errors, as is already done in do_exec.
2008-07-01Update copyright years.Thomas Schwinge
2008-06-10 * elfcore.c (TIME_VALUE_TO_TIMESPEC): Completely implement instead ofSamuel Thibault
casting `time_value *' into `struct timeval *'. (dump_core): Reimplement timeradd instead of casting `time_value *' into `struct timeval *'.
2004-10-23(check_elf_phdr): Fix typo in last change.Roland McGrath
2004-10-22.Roland McGrath
2004-10-222004-10-22 Roland McGrath <roland@frob.com>Roland McGrath
* exec.c (check_elf_phdr): Return early on setting ENOEXEC. Only touch E->info.elf.phdr_addr once, on the PT_LOAD segment that actually contains the e_phoff location in the file. (do_exec): If E.info.elf.phdr_addr is zero, don't set BOOT->phdr_size.
2004-09-26(check_elf_phdr): Tweak last change.Roland McGrath
2004-09-26.Roland McGrath
2004-09-262004-09-26 Roland McGrath <roland@frob.com>Roland McGrath
* priv.h (struct execdata.info.elf): New field `phdr_addr'. * exec.c (check_elf): Set E->info.elf.phdr_addr here from e_phoff. (check_elf_phdr): Don't check for PT_PHDR, remove last two args. (do_exec): Update callers. Set BOOT->phdr_addr and BOOT->phdr_size using info saved by check_elf.
2004-02-11.Roland McGrath
2004-02-112004-02-11 Roland McGrath <roland@frob.com>Roland McGrath
* exec.c (servercopy): Change signature to avoid casted arguments. Update callers. (do_exec, S_exec_setexecdata): Update callers.
2004-02-10.Roland McGrath
2004-02-102004-01-15 Roland McGrath <roland@frob.com>Roland McGrath
* priv.h (struct execdata.info.elf): Add `execstack' flag. * exec.c (check_elf_phdr): Set it according to PT_GNU_STACK's PF_X flag bit. If no PT_GNU_STACK, default to set. (do_exec): If flag is clear, remove execute permission from stack.
2004-02-102004-02-10 Roland McGrath <roland@frob.com>Roland McGrath
* elfcore.c (dump_core): Include null terminator in note name size, and round up to four byte alignment. (dump_core: write_note): Don't round OFFSET after each partial write. (dump_core): Don't round up to page size before writing notes. Do round up to page size for offset of each PT_LOAD region.
2002-09-17.Roland McGrath
2002-09-172002-09-17 Roland McGrath <roland@frob.com>Roland McGrath
* elfcore.c [i386_THREAD_STATE] (fetch_thread_regset): The two types are not actually identical, must rearrange some members a little.
2002-06-13.Roland McGrath
2002-06-132002-06-13 Roland McGrath <roland@frob.com>Roland McGrath
* priv.h (trivfs_protid_t): Type removed (now in trivfs.h).
2002-05-29.Roland McGrath
2002-05-292002-05-29 Roland McGrath <roland@frob.com>Roland McGrath
* elfcore.c (dump_core): int -> size_t
2002-05-292002-05-29 Roland McGrath <roland@frob.com>Roland McGrath
* hashexec.c (check_hashbang): Fix fs id port arg in io_identity call.
2002-05-11(prepare): fix last changeRoland McGrath
2002-05-10.Roland McGrath
2002-05-102002-05-10 Roland McGrath <roland@frob.com>Roland McGrath
* exec.c (prepare): Do io_stat when io_map fails as for when io_map_cntl fails.
2002-05-03.Roland McGrath
2002-05-032002-05-01 Roland McGrath <roland@frob.com>Roland McGrath
* elfcore.c [ALPHA_THREAD_STATE] (ELF_MACHINE, fetch_thread_regset, fetch_thread_fpregset): New definitions for Alpha CPU.
2002-04-27.Roland McGrath
2002-04-272002-04-27 Roland McGrath <roland@frob.com>Roland McGrath
* priv.h: Include <link.h> to get ElfW macro. * priv.h, exec.c, main.c, hostarch.c: Use `ElfW(TYPE)' in place of `Elf32_TYPE' throughout.
2002-03-11dead file removedRoland McGrath
2002-03-11.Roland McGrath
2002-03-112002-03-11 Roland McGrath <roland@frob.com>Roland McGrath
* elfcore.c: New file, used by crash server (../trans) to write ELF core dump files. Thanks to Jon Arney <jarney1@cox.net> for spurring me to write this, and for helping to test and debug it.
2002-03-112002-03-11 Roland McGrath <roland@frob.com>Roland McGrath
* core.c: File removed. * Makefile (DIST_FILES): Remove core.c from the list.
2002-03-11(dump_core): Missing munmapRoland McGrath
2002-03-11Prototype code to produce the NT_PSINFO note.Roland McGrath
2002-03-09Fixed some little bugs in the prototype code.Roland McGrath
2002-03-08Untested code.Roland McGrath
2002-01-02.Roland McGrath
2002-01-022002-01-02 Roland McGrath <roland@frob.com>Roland McGrath
* exec.c (do_exec) [KERN_INVALID_LEDGER]: Pass extra arguments to task_create for OSF variant.
2002-01-02.Roland McGrath
2002-01-022002-01-01 Roland McGrath <roland@frob.com>Roland McGrath
* execmutations.h (SERVERCOPY): New macro.
2002-01-01.Roland McGrath