[syslog-ng] [PATCH 0/3] WIP: Convert syslog-ng to use upstream ivykis

Gergely Nagy algernon at balabit.hu
Tue May 8 12:20:40 CEST 2012


Gergely Nagy <algernon at balabit.hu> writes:

> A long long time ago, upstream and BalaBit's version of ivykis started
> to diverge, which - at the time - was necessary, but the intent always
> was to eventually get things upstream and merged, to allow syslog-ng
> to use upstream ivykis, as-is.
>
> With the help of Lennert Buytenhek (ivykis upstream) and Balazs
> Scheidler, I present you the first work in progress patch set against
> syslog-ng that enables it to work with an unmodified ivykis!

And in an attempt to not spam the list with N+1 revisions of the same
patch set, I'd like to direct the interested readers to my
feature/3.4/ivykis/upstream[1] branch, which at the moment contains
these changes:

 * "Do not link anything but libsyslog-ng against ivykis"

   As the summary implies, and discussed before, this makes it so that
   only libsyslog-ng is linked against ivykis, nothing else is. In
   addition to yesterday's set, this fixes the afsmtp module too, not
   only libsyslog-ng-crypto. (These two were the only SOs linked
   directly against ivykis, apart from libsyslog-ng)

 * "autogen.sh: Create configure.gnu ourselves in submodules"

   To make it easier to use upstream git repos as submodules, this
   changes the autogen.sh script to create configure.gnu itself.

   Exchanging our forked repos to upstream has never been easier!

   (This is something I hinted at yesterday, but didn't have time to do
   then)

 * "lib/: Use upstream ivykis"

   This is pretty much the same patch as the bulk of yesterday's set,
   except that in lib/control.c, there's an extra change that turns an
   iv_fd_register() into iv_fd_register_try(), as that part of the code
   relies on the fd registration being synchronous (the
   logreader/logwriter stuff does not, as far as I understand).

   Other than that, it's the same as yesterday: boring stuff outside of
   logreader.c, logwriter.c and control.c.

 * "ivykis: Use github:algernon/ivykis for the time being"

   This changes the git submodule to point to my fork of ivkis, which
   has one patch over upstream: the one that removes the
   old-handle-related aborts from iv_fd_set_handler_{in,out,err}.

   A pull request has been opened[2], that was the easiest for me.

   This patch should be dropped once the pull request is closed.

 [1]: https://github.com/algernon/syslog-ng/commits/feature/3.4/ivykis/upstream
 [2]: https://github.com/buytenh/ivykis/pull/2

> Nevertheless! The good news still is, that we're *very* close to being
> able to build with upstream ivykis! A few issues to fix, and then
> comes the next part: going over all the changes that were made to the
> BalaBit fork of ivykis, and send everything upstream that has not been
> sent yet.

And with the patches above, I'm reasonably happy with the current state
of things, so it's time to move to the next item on the agenda, and diff
the BalaBit fork to upstream, clean stuff up, and send patches.

That will not happen overnight however, but I'll try my best to get it
done faster.

In parallel to that, I'll resume packaging ivykis for Debian, and start
building my own syslog-ng 3.3 debs[3] against it (the packages in Debian
proper will continue using the embedded fork for now).

 [3]: http://asylum.madhouse-project.org/projects/debian/

-- 
|8]



More information about the syslog-ng mailing list