[Soc-coordination] Weekly report (10th week) - Debian GNU/Hurd Debianish initialization

heroxbd at gentoo.org heroxbd at gentoo.org
Sat Aug 24 09:31:15 UTC 2013


Hey 4winter,

4winter at informatik.uni-hamburg.de writes:

> With some tiny patches for `ifupdown` I've been able to resolve
> `network related issues </gsoc/#networkrelatedissues>`_. All of them?
> Of course not, funny thing about developing for the Hurd is that once
> you fix one thing, then some other thing or code path is executed that
> has never been run on Hurd before, and therefore something else
> breaks. In this case I fixed `ifupdown` to generate valid names for
> the pid file and leases file and all of the sudden `dhclient` starts
> dying.

Seems that you had a very hard time.

> Funny thing about that is, if one drops the `-v` flag from the
> `dhclient` invocation as I did it above, the crash isn't triggered and
> once the lease file has been successfully written, it is safe to add
> the `-v` flag again. Not yet sure what goes on there, then again,
> looking at the `source of isc-dhcp-client
> <http://sources.debian.net/src/isc-dhcp/4.2.4-7/client/dhclient.c>`_
> it is not so surprising that it crashes :/

Sorry for my innocence, but what's the exact "not so surprising" reason
that it crashes?

> When I first looked at `ifupdown` it was written in `noweb
> <http://en.wikipedia.org/wiki/Noweb>`_, a literate programming
> tool. It is an interesting idea, even more so since (classic) c can be
> very verbose and cryptic. But it decouples the control flow from the
> structure of the program, which makes patching it quite a challenge
> since it is not as obvious where the changes have to go in. This is
> how `ifupdown` looked some weeks ago::
>
>   % wc --lines ifupdown.nw
>   6123 ifupdown.nw
>   % pdftk ifupdown.pdf dump_data | grep NumberOfPages
>   NumberOfPages: 113
>
> The `ifupdown.nw` is the noweb source, from which seven .c, four .h,
> two .pl and one Makefile are generated. It also contains a redicioulus
> amount of documentation, to the point that the authors at several
> points did not now what to write and just drop some nonsensical lines
> into the file. The source also compiles to a 113 page pdf file, that
> contains all of the documentation and all of the code, not at all in
> the order that one would expect a program to be written, but in the
> order the authors chose to structure the documentation. Fortunately
> for me the maintainer decided to drop the noweb source and to add the
> generated files to the source control system. This made my job much
> easier :)

This is the first time I meet with a piece of literal programming in
real world. That's exciting.

> So here are the patches I published this week:
>
> * Fixes for `ifupdown`:
>   http://lists.gnu.org/archive/html/bug-hurd/2013-08/msg00063.html
>
> * Fixes for `fakeroot-hurd` and `remap`:
>   http://lists.gnu.org/archive/html/bug-hurd/2013-08/msg00064.html
>
> I must admit that I do not know exactly what I will do next
> week. Obviously fixing the `dhclient` crash would be nice, I'll look
> into that. But I'm surely find some useful thing to do.

Sorry I haven't digged into your previous work. How is the network
supposed to be set up on Hurd, manually?

Why are you bonded to dhclient? How about dhcpd? Why are you bonded to
ifupdown? How about a reduced helper than only sets a static IP address
and speaks basic DHCP?

Cheers,
Benda



More information about the Soc-coordination mailing list