aboutsummaryrefslogtreecommitdiff
path: root/exec
Commit message (Collapse)AuthorAgeFilesLines
* (check_hashbang): Correctly deal with interpreter lines having no argument.Miles Bader1996-02-261-4/+12
|
* (check_hashbang): Use hash_file_name_path_lookup() instead of doing the pathMiles Bader1996-01-301-49/+14
| | | | search ourselves, and get rid of LOOKUP_CWDIR & associated logic.
* (S_exec_exec):Miles Bader1996-01-301-9/+21
| | | | | Use strdupa(). Update use of hurd_file_name_lookup() [still probably not right though].
* (check_hashbang):Miles Bader1996-01-111-14/+21
| | | | | | When using executable name found on the path, don't return alloca()ed memory from search_path(); use malloc() instead. Use envz_get() to search the environment.
* (S_exec_exec): Use envz_get() to search the environment.Miles Bader1996-01-111-14/+7
|
* (safe_bzero): Rewritten using hurd_catch_signal.Roland McGrath1996-01-041-24/+4
|
* (check_hashbang): Rearrange arg frobbing code somewhat to useRoland McGrath1996-01-041-82/+53
| | | | hurd_catch_signal instead of old preemption interface.
* (do_exec):Miles Bader1995-12-291-5/+12
| | | | | | Be careful not to look at BOOT after we release our reference on it. Correctly initialize BOOT->intarray in the case where NINTS < INIT_INT_MAX but we don't alloc a new array.
* (map): Rearrange code to fix some bugs and not remap unless necessary.Roland McGrath1995-12-151-32/+23
| | | | | | (input_room): Simplify. (check_elf): Extract all information from file header before calling `map' for program headers.
* (safe_bzero): New function, broken out of load_section.Roland McGrath1995-11-211-27/+33
| | | | (load_section): Call it.
* (going_down): Variable removed.Roland McGrath1995-11-211-15/+18
| | | | | | (deadboot): Don't test it. Instead, use ports calls to check if there are no other live ports. (trivfs_goaway): Don't set it.
* (check_hashbang): Undo boneheaded last change.Roland McGrath1995-11-211-4/+4
|
* (load_section): Undo boneheaded last change.Roland McGrath1995-11-211-2/+2
|
* (check_hashbang): Actually declare FILE_NAME and FILE volatile, notMichael I. Bushnell1995-11-211-2/+2
| | | | the contents.
* (check_hashbang) [prepare_args]: Declare FILE_NAME, ERROR, and NAMEMichael I. Bushnell1995-11-211-3/+3
| | | | volatile.
* (load_section): Declare ADDR and VM_PROT volatile.Michael I. Bushnell1995-11-211-2/+2
|
* (user_port): Fixed port selection logic.Roland McGrath1995-11-161-13/+20
| | | | (check_hashbang): Fixed PATH searching in script name guessing.
* (S_exec_startup): Compatibility RPC removed.Roland McGrath1995-11-131-24/+0
|
* (load_section): Catch faults while zeroing partial bss page.Roland McGrath1995-11-131-22/+47
|
* (main): Add FLAGS arg to trivfs_startup call.Miles Bader1995-11-061-1/+1
|
* (S_exec_startup_get_info): New function, modified from S_exec_startup.Roland McGrath1995-10-251-29/+67
| | | | (S_exec_startup): Just call it.
* (exec_demuxer): Call exec_startup_server.Roland McGrath1995-10-251-1/+4
|
* (OBJS): Add exec_startupServer.o.Roland McGrath1995-10-241-1/+2
|
* (struct bootinfo): Use vm_size_t for phdr_size.Roland McGrath1995-10-241-1/+2
|
* (check_hashbang: prepare_args): Enable and clean up code to guess the nameRoland McGrath1995-10-181-88/+87
| | | | of the script before resorting to /dev/fd.
* (check_hashbang): Copy passed args from the right place.Roland McGrath1995-10-181-1/+2
|
* Initial revisionRoland McGrath1995-10-181-0/+442
|
* (struct execdata): Moved to priv.h.Roland McGrath1995-10-181-115/+97
| | | | | | | | | | | (std_*, finish): Make global. (do_exec): Only reset CWDIR when null, even if secure. Actually call check_hashbang and return success if it does. Use new hurd_file_name_lookup protocol with private callbacks to open interpreter file on behalf of client. Remove `bootout' label; use `stdout' or `out' as appropriate instead. At `out' label always deref BOOT, which cleans it up iff necessary. (S_exec_exec): #if 0 out $EXECSERVERS processing for time being.
* (SRCS, OBJS): Add hashexec.[co].Roland McGrath1995-10-181-3/+3
| | | | (DIST_FILES): Remove it from here.
* Added some #includes.Roland McGrath1995-10-181-0/+78
| | | | | | (struct execdata): Moved here from exec.c. (std_*): Declare these. (finish, check_hashbang): Declare them.
* Initial revisionRoland McGrath1995-10-112-0/+70
|
* (OBJS): Add main.o; remove fsysServer.o, notifyServer.o.Roland McGrath1995-10-111-3/+7
| | | | | | (LCLHDRS): Add priv.h and execmutations.h. (exec-MIGSFLAGS): New variable. (exec): Depend on livtrivfs, libthreads, libshouldbeinlibc.
* Initial revisionRoland McGrath1995-10-111-0/+282
|
* Server mechanics removed; now uses libtrivfs/libports.Roland McGrath1995-10-111-498/+96
| | | | | | | Main program split out into main.c. (std_lock): New variable (rwlock). (do_exec): Acquire reader lock to access std_ints and std_ports. (S_exec_setexecdata): Acquire writer lock to change them.
* (do_exec): Doc fix.Michael I. Bushnell1995-10-021-0/+4
|
* (do_exec): Don't set NEWTASK's bootstrap port until after we have finishedRoland McGrath1995-09-271-18/+8
| | | | | completely with OLDTASK. (do_mach_notify_no_senders): Remove bogus mod_refs call on receive_portset.
* (struct bootinfo): New members `phdr_addr', `phdr_size', `user_entry'.Roland McGrath1995-09-201-257/+321
| | | | | | (do_exec): Set them. Code rearranged to construct bootinfo before looking up interpreter file, keep proper track of port rights and VM copied into bootinfo (there were leaks).
* Remove vpath directive.Roland McGrath1995-09-161-2/+0
|
* (OTHERLIBS, CPPFLAGS): Disable bfd by default.Roland McGrath1995-09-081-2/+2
|
* (S_fsys_forward): New stub function.Roland McGrath1995-08-281-2/+6
|
* (SRCS): Added unzip.c, util.c, and inflate.c.Michael I. Bushnell1995-07-311-1/+1
|
* (bfd_mach_host_arch_mach): Remove assignment from inside if test.Michael I. Bushnell1995-07-071-2/+2
|
* Removed dependencies that are now automatically generated.Michael I. Bushnell1995-07-061-4/+0
|
* (OTHERLIBS): Define var.Michael I. Bushnell1995-07-051-4/+1
| | | | (all, exec): Delete targets.
* (exec): fooMichael I. Bushnell1995-07-051-3/+4
|
* (load_section): Remove assignments from if tests.Michael I. Bushnell1995-06-271-50/+68
| | | | | | | | | | | (map): Likewise. (prepare): Likewise. (load): Likewise. (servercopy): Likewise. (do_exec): Likewise. (S_exec_setexecdata): Likewise. (S_exec_exec): Put extra parens around assignment inside while test.
* Rewritten to unconditionally return both BFD and ELF machine types.Roland McGrath1995-06-081-40/+13
|
* (struct execdata.info.elf): Add members `anywhere' and `loadbase'.Roland McGrath1995-06-081-123/+167
| | | | | | | | | | | | (load_section): Use them; if `anywhere' set, load the section anywhere. Record load address in `loadbase'. (check_elf): Initialize `anywhere' and `loadbase'. (postload): Merged into load. (load): Perform postload functionality here, after calling finish_mapping. (finish): Take new flag arg; deallocate file port only if set. (do_exec): Pass flag to finish appropriately. Don't call finish_mapping and postload after load. KLUDGE: Load the interpreter before the program instead of after.
* Majorly revamped: Now supports the ELF format directly.Roland McGrath1995-06-051-297/+396
| | | | | Secondarily uses the BFD library #ifdef BFD. Supports gunzipping only #ifdef GZIP.
* Add fsys_set_options, replacing fsys_mod_readonly.Miles Bader1995-05-121-3/+3
|