<feed xmlns='http://www.w3.org/2005/Atom'>
<title>teythoon/hurd.git/boot, branch master</title>
<subtitle>Personal Hurd development repository</subtitle>
<id>https://darnassus.sceen.net/cgit/teythoon/hurd.git/atom?h=master</id>
<link rel='self' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/'/>
<updated>2016-11-05T17:47:34Z</updated>
<entry>
<title>boot: Improve device pass-through.</title>
<updated>2016-11-05T17:47:34Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-11-05T17:47:34Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=8cf212d402b0a392ed6c89f9e1035cbbf9988478'/>
<id>urn:sha1:8cf212d402b0a392ed6c89f9e1035cbbf9988478</id>
<content type='text'>
Previously, the device file was opened once at startup time.  This is
fragile, as the remote server might die.  Open it at device open time
instead.

* boot/boot.c (options): Improve documentation.
(struct dev_map): Rename fields, document, store the name of the
device file instead of a port.
(add_dev_map): Update accordingly.
(lookup_dev): Likewise.
(ds_device_open): Open the device file here instead.
</content>
</entry>
<entry>
<title>Adjust to the fixed new task notifications.</title>
<updated>2016-11-01T17:04:29Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-11-01T17:02:34Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=0bc74163d5406e305b84f8f51dbce097bb46fa90'/>
<id>urn:sha1:0bc74163d5406e305b84f8f51dbce097bb46fa90</id>
<content type='text'>
* boot/boot.c (S_mach_notify_new_task): The send rights are now indeed
moved to the target task, adjust accordingly.
* proc/mgt.c (S_mach_notify_new_task): Likewise.
</content>
</entry>
<entry>
<title>boot: Tidy up the argument parser.</title>
<updated>2016-11-01T15:32:47Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-11-01T14:07:07Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=61f89952020ff1ff34e391ae78acd2da51476c41'/>
<id>urn:sha1:61f89952020ff1ff34e391ae78acd2da51476c41</id>
<content type='text'>
* boot/boot.c (options): Group options together.  Do not end help
texts with a colon.
(args_doc): Remove variable.
(main): Group the store options together.
</content>
</entry>
<entry>
<title>boot: Add a default boot script.</title>
<updated>2016-11-01T15:32:47Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-10-27T09:50:46Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=db94feece63e18364dd2c9228a6ef3452fe22cc2'/>
<id>urn:sha1:db94feece63e18364dd2c9228a6ef3452fe22cc2</id>
<content type='text'>
* boot/boot.c (OPT_BOOT_SCRIPT): New macro.
(options): Add flag '--boot-script'.
(args_doc): Do not expect the script as positional argument.
(parse_opt): Handle new flag, do not expect the script as positional
argument.
(read_boot_script): New function.
(default_boot_script): New variable containing a boot script capable
of booting contemporary Hurd systems.
(main): Use the new function to read the boot script, or fall back to
using the builtin one.
</content>
</entry>
<entry>
<title>boot: Allow unprivileged users to boot Subhurds.</title>
<updated>2016-11-01T15:32:47Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-10-23T09:48:06Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=8c0e65b6b2db9946153ed736e66d4e613875deb6'/>
<id>urn:sha1:8c0e65b6b2db9946153ed736e66d4e613875deb6</id>
<content type='text'>
Previously, boot handed privileged kernel ports to Subhurds.  This
made boot unusable for unprivileged users, and allowed Subhurds to
wreak havoc on the whole system.  Fix this by handing out pseudo ports
instead of the privileged ports.

* NEWS: Update.
* boot/Makefile (MIGSTUBS): Build stubs for the new kernel interfaces.
(MIGSFLAGS): Include mutation file.
(HURDLIBS): Link against libihash.
* boot/boot.c (privileged, want_privileged): New variables.
(pseudo_privileged_host_port): New variable.
(pseudo_pset, pseudo_kernel): Likewise.
(task_notification_port): Likewise.
(dead_task_notification_port): Likewise.
(boot_demuxer): Handle new protocols.
(OPT_PRIVILEGED): New macro.
(options): Add flag '--privileged' to enable the old mode.
(parse_opt): Handle new flag.
(allocate_pseudo_ports): New function.
(main): Handle new flag.  If not running privileged, allocate more
pseudo ports to hand out in place of privileged kernel ports, create a
task namespace, and a task that the Subhurd can frob instead of the
real kernel task.
(do_mach_notify_dead_name): Handle dying tasks.
(S_vm_set_default_memory_manager): New function.
(S_host_reboot): Likewise.
(S_host_processor_set_priv): Likewise.
(S_register_new_task_notification): Likewise.
(task_ihash_cleanup): Likewise.
(task_ihash): New variable.
(task_died): New function.
(S_mach_notify_new_task): Likewise.
(S_processor_set_tasks): Likewise.
* boot/mig-decls.h: New file.
* boot/mig-mutate.h: Likewise.
</content>
</entry>
<entry>
<title>boot: restore terminal state on exit</title>
<updated>2016-11-01T14:18:19Z</updated>
<author>
<name>Justus Winter</name>
<email>4winter@informatik.uni-hamburg.de</email>
</author>
<published>2015-02-08T00:54:12Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=7ab8e74f1331b70dd52e604d0010a49fabf9e549'/>
<id>urn:sha1:7ab8e74f1331b70dd52e604d0010a49fabf9e549</id>
<content type='text'>
* boot/boot.c (host_exit): Make it a function and restore the terminal state.
</content>
</entry>
<entry>
<title>boot: Move bootscript callbacks.</title>
<updated>2016-11-01T14:18:19Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-11-01T12:40:53Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=411806400bcc72e9f6004c40b3af8960df452be5'/>
<id>urn:sha1:411806400bcc72e9f6004c40b3af8960df452be5</id>
<content type='text'>
* boot/boot.c (useropen, load_image, boot_script_exec_cmd): Move...
* boot/userland-boot.c: ... here.
</content>
</entry>
<entry>
<title>boot: Quote arguments containing spaces.</title>
<updated>2016-11-01T14:18:19Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-11-01T12:29:19Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=6511afff053bab1e7e0542119ff1331813ea19e2'/>
<id>urn:sha1:6511afff053bab1e7e0542119ff1331813ea19e2</id>
<content type='text'>
* boot/boot.c (boot_script_exec_cmd): Quote arguments containing
spaces.
</content>
</entry>
<entry>
<title>boot: Use the smallest possible name when inserting rights.</title>
<updated>2016-11-01T14:18:19Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-11-01T11:29:25Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=dfd5134090dd80957dce5a65b467aafaff47ca3b'/>
<id>urn:sha1:dfd5134090dd80957dce5a65b467aafaff47ca3b</id>
<content type='text'>
* boot/userland-boot.c (boot_script_insert_right): Use the smallest
possible name instead of the local name.
</content>
</entry>
<entry>
<title>boot: Remove hacks for running boot on UX.</title>
<updated>2016-11-01T10:37:10Z</updated>
<author>
<name>Justus Winter</name>
<email>justus@gnupg.org</email>
</author>
<published>2016-10-24T21:07:55Z</published>
<link rel='alternate' type='text/html' href='https://darnassus.sceen.net/cgit/teythoon/hurd.git/commit/?id=14ca7bbf803d0b6f9defc28db9021dcb2e65384a'/>
<id>urn:sha1:14ca7bbf803d0b6f9defc28db9021dcb2e65384a</id>
<content type='text'>
* boot/Makefile (COMMON-OBJS): Do not build server stubs for the
bootstrap protocol.
Remove all UX-related variables and targets.
* boot/boot.c: Remove all UX-related definitions and includes.
* boot/frank1.ld: Delete file.
* boot/frankemul.ld: Likewise.
* boot/mach-crt0.c: Likewise.
* boot/sigvec.S: Likewise.
* boot/syscall.S: Likewise.
* boot/ux.c: Likewise.
* boot/ux.h: Likewise.
</content>
</entry>
</feed>
