[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: relicense module spawn-pipe

From: Eric Blake
Subject: Re: relicense module spawn-pipe
Date: Thu, 29 Aug 2013 03:43:02 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130805 Thunderbird/17.0.8

On 08/29/2013 01:37 AM, Or Goshen wrote:
> Removed the use of error() in spawn-pipe

> @@ -393,12 +394,12 @@
>  create_pipe_bidi (const char *progname,
>                    const char *prog_path, char **prog_argv,
>                    bool null_stderr,
> -                  bool slave_process, bool exit_on_error,
> +                  bool slave_process,
>                    int fd[2])

Ouch.  You're proposing changing the signature, so that ALL callers that
use this gnulib module would have to modify and recompile their code to
adjust to the change the next time they upgrade gnulib.  While we have
changed signatures in the past, such changes must have a good reason
(documented in the ChangeLog and/or commit message) and be documented in
NEWS, so this patch as-is would be incomplete.  Furthermore, since the
ability to exit on failure are quite useful to some GPL programs, I feel
like you are needlessly crippling this module; it's probably better to
have two parallel entry points, so that callers can choose whether to
have the exit-on-failure vs. return an error semantics.

And as I already told you, merely removing the dependence on error()
does NOT make the module a candidate for LGPL; you must ALSO remove the
dependence on xalloc; and must do so in both the fatal-signal and
wait-process modules as well as the spawn-pipe module.  You are far from
having a complete solution, which means you will only be adding more
code, which means your patch is far from trivial, which means you will
need to assign copyright papers to the FSF.

In short, I think you're fighting quite an uphill battle at the moment,
and it may turn out to be better to implement a new module from scratch
rather than trying to castrate the existing modules into shape for
relicensing for library use.

Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]