• E
    build: fix build on platforms without ptsname_r · f7bd00c1
    Eric Blake 提交于
    MacOS lacks ptsname_r, and gnulib doesn't (yet) provide it.
    But we can avoid it altogether, by using gnulib openpty()
    instead.  Note that we do _not_ want the pt_chown module;
    gnulib uses it only to implement a replacement openpty() if
    the system lacks both openpty() and granpt(), but all
    systems that we currently port to either have at least one of
    openpty() and/or grantpt(), or lack ptys altogether.  That is,
    we aren't porting to any system that requires us to deal with
    the hassle of installing a setuid pt_chown helper just to use
    gnulib's ability to provide openpty() on obscure platforms.
    
    * .gnulib: Update to latest, for openpty fixes
    * bootstrap.conf (gnulib_modules): Add openpty, ttyname_r.
    (gnulib_tool_option_extras): Exclude pt_chown module.
    * src/util/util.c (virFileOpenTty): Rewrite in terms of openpty
    and ttyname_r.
    * src/util/util.h (virFileOpenTtyAt): Delete dead prototype.
    f7bd00c1
util.h 9.2 KB