On Tue, Mar 11, 2014 at 9:41 AM, Radu Gheorghe
<[email protected]>wrote:

> Thanks! And thanks for the clarifications!
>
> If I can help with anything (tests, etc), let me know.
>
>
 Indeed, this would be very useful. I have changed librelp to be able to
work without TLS and modified rsyslog so that it emits proper error
messsages are emitted if relp is tried to be used with a non-tls librelp.

Andre is just building some experimental packages. I took the liberty to
ask him to mail you these RPMs. It would be great if you could give them a
try. If they work ok, I'll finally do the rsyslog 7.6.1 release.

Rainer

> On Mon, Mar 10, 2014 at 6:08 PM, Rainer Gerhards
> <[email protected]> wrote:
> > I now track this issue here:
> >
> > https://github.com/rsyslog/librelp/issues/1
> >
> > Rainer
> >
> >
> > On Mon, Mar 10, 2014 at 4:49 PM, Rainer Gerhards
> > <[email protected]>wrote:
> >
> >> On Mon, Mar 10, 2014 at 1:23 PM, Radu Gheorghe <
> [email protected]
> >> > wrote:
> >>
> >>> Hi Rainer,
> >>>
> >>> Thanks for your answer. I see what you're saying and I agree.
> >>>
> >>> I'm [trying to] focus on a solution, so it sounds like, for my
> >>> particular case (I want TCP+TLS and RELP), the solution would be to
> >>> disable RELP+TLS? How can we do this:
> >>> a) at ./configure time? I guess you can do the code change you were
> >>> talking about previously, to disable TLS if the GnuTLS version found
> >>> is too old?
> >>>
> >>
> >> it acutally must be done in librelp, with some support for clients like
> >> rsyslog.
> >>
> >>
> >>> b) in the packages? I guess we'll have a rsyslog-relp and a
> >>> rsyslog-relp-tls package?
> >>>
> >>>
> >> no, simply because we cannot have relp with TLS on those platforms. So
> >> there is one librelp package, and the API must be extended to tell
> clients
> >> whether or not it supports TLS. I'll have a look at this soon.
> >>
> >>
> >>> Another question that I have, which doesn't concern me right now, but
> >>> still: how will one be able to listen for both TCP+TLS and RELP+TLS,
> >>> since the two seem to require different GnuTLS versions?
> >>
> >>
> >> NO! The problem is GnuTLS, which has broken it's API or ABI. So
> >> ./configure must be run when the version of GnuTLS that you want to use
> is
> >> installed. That's not an rsyslog-exclusive problem, I guess most other
> >> programs will see the same issue.
> >>
> >>
> >>> The only
> >>> workaround I can think of is to have two daemons, and use different
> >>> LD_LIBRARY_PATH variables when launching them, which point to the two
> >>> versions of GnuTLS installed.
> >>>
> >>> Or maybe I'm doing something wrong. Maybe rsyslog is able to run both
> >>> in some circumstances, and I didn't figure out how. Is there any info
> >>> I can provide or anything I can do to solve the mistery?
> >>>
> >>>
> >> build rsyslog from source AFTER you have moved to the new GnuTLS and all
> >> will work well.
> >>
> >> Rainer
> >>
> >>
> >>> Thanks a lot for looking into this!
> >>>
> >>> Best regards,
> >>> Radu
> >>>
> >>> On Mon, Mar 10, 2014 at 1:00 PM, Rainer Gerhards
> >>> <[email protected]> wrote:
> >>> > On Mon, Mar 10, 2014 at 11:01 AM, Radu Gheorghe
> >>> > <[email protected]>wrote:
> >>> >
> >>> >> Hi guys, thanks a lot for your replies!
> >>> >>
> >>> >> @Asaaf: I know installing a newer GnuTLS version will help make RELP
> >>> >> work. The problem is, it breaks my TCP+TLS setup.
> >>> >>
> >>> >> @Rainer: If there's something wrong with my build, then the bug is
> in
> >>> >> the packages, because I'm using the 8.1.6 RPMs. Maybe Andre can give
> >>> >> some insight?
> >>> >>
> >>> >
> >>> > This is also the answer to your text below. The packages are correct,
> >>> but
> >>> > this is a good example why I don't like to duplicate the distro
> >>> maintainers
> >>> > job (for "external packages").
> >>> >
> >>> > The rsyslog RPM is perfect, BUT you have installed a new version of
> >>> GnuTLS
> >>> > AND the new GnuTLS seems to be not backwards-compatible. So the new
> >>> version
> >>> > breaks any app that expects the older version. This is rsyslog, but
> if
> >>> you
> >>> > look further, I'd guess that most packages that rely on GnuTLS will
> be
> >>> > broken after this upgrade.
> >>> >
> >>> > The reason is that usually the configure script is used to detect the
> >>> > environment, and then the build assumes this environment and uses the
> >>> > proper code path (using conditional compilation). Usually, this is
> not a
> >>> > problem, as APIs remain stable. With GnuTLS, this unfortunately seems
> >>> not
> >>> > to be the case (I judge based on your report), because it looks like
> an
> >>> > existing API is no longer supported by newer versions of the lib.
> IMHO
> >>> > that's a bad thing to do, but if it is that way, you cannot get
> around
> >>> it
> >>> > other by re-building packages like rsyslog (starting with
> ./configure,
> >>> as
> >>> > usual).
> >>> >
> >>> > If we go now ahead and package GnuTLS as a system lib and ship it, we
> >>> will
> >>> > break many other packages. This is what the distro maintainers keep
> >>> track
> >>> > of, seeing such things and re-building all associated packages.
> >>> Definitely
> >>> > not something we want to do (not the mention we don't have the
> resources
> >>> > even if we would want to).
> >>> >
> >>> > Shipping it is a integrated component is also very ugly. Just think
> of
> >>> the
> >>> > security incident, we would need to keep track of all those things.
> >>> >
> >>> > So I need to conclude that on a platform, no matter how recent it is,
> >>> that
> >>> > does not support the necessary core software stack, we need to
> disable
> >>> > functionality. I agree that disabling RELP is too much, but the only
> >>> decent
> >>> > solution I see is to disable the RELP TLS feature. If someone wants
> it,
> >>> he
> >>> > or she can still install the required packages from source. We do
> have
> >>> > instructions on how to do that, it's still inconvenient, but again,
> >>> > everything else I strongly think is far beyond the scope of the
> rsyslog
> >>> > project.
> >>> >
> >>> > Rainer
> >>> >
> >>> >>
> >>> >> I'll answer to your comments inline:
> >>> >>
> >>> >> On Fri, Mar 7, 2014 at 6:08 PM, Rainer Gerhards
> >>> >> <[email protected]> wrote:
> >>> >> > On Fri, Mar 7, 2014 at 2:34 PM, Radu Gheorghe <
> >>> >> [email protected]>wrote:
> >>> >> [...]
> >>> >> >> ####possible solutions####
> >>> >> >> I think there's a bunch of things that can be improved. I'm
> writing
> >>> >> >> this from the user's point of view, because I don't know the
> >>> >> >> implementation details and what's technically possible:
> >>> >> >> - imrelp.so shouldn't depend on GnuTLS. IMO people that don't
> need
> >>> TLS
> >>> >> >> shouldn't have this problem. Incidentally, this will also be a
> >>> >> >> workaround for me, because it means I can live with the system's
> >>> >> >> GnuTLS for lmnsd_gtls.so and use plain RELP.
> >>> >> >>
> >>> >> >
> >>> >> > well, we could do a configure check and statically disable the
> code
> >>> when
> >>> >> > gnutls is too old. Anything more fancy requires a code
> contributions
> >>> if I
> >>> >> > look at the current backlog.
> >>> >> >
> >>> >>
> >>> >> +1. I think this would be a good workaround for now.
> >>> >>
> >>> >> >
> >>> >> >> - ideally, TCP+TLS should work with the new GnuTLS version
> >>> >> >
> >>> >> >
> >>> >> > That's a new problem, they seem to have removed an API. TCP+TLS
> used
> >>> to
> >>> >> > work with any GnutTLS version. I routinely build both TCP/TLs +
> RELP
> >>> on
> >>> >> the
> >>> >> > same system. Will look into it...
> >>> >> >
> >>> >>
> >>> >> Thanks a lot! If you have any insight about this, please share :)
> >>> >>
> >>> >> >
> >>> >> >> and imrelp
> >>> >> >> should work with the old version
> >>> >> >>
> >>> >> >
> >>> >> > That's technically problematic and requires downgrading of the
> >>> feature
> >>> >> set.
> >>> >> > If I receive a code contribution, I am willing to consider that
> >>> path.  I
> >>> >> > won't do anything in that regard myself.
> >>> >>
> >>> >> I thought the situation is something like this, that's why I said
> >>> >> "ideally"...
> >>> >>
> >>> >> >
> >>> >> >
> >>> >> >> - if the above is not possible, then I assume a certain version
> of
> >>> >> >> GnuTLS is required. So it should be included/added in the rsyslog
> >>> >> >> packages and installed in a separate location. I'm saying a
> separate
> >>> >> >> location is needed so it doesn't interfere with the system (maybe
> >>> >> >> there's some other software in the system that requires and older
> >>> >> >> version, and rsyslog's upgrade breaks it)
> >>> >> >>
> >>> >> >>
> >>> >> > I *really* don't like this idea, as this would mean we need to
> take
> >>> care
> >>> >> of
> >>> >> > duplicating the rest of the distro packaning. Where to stop?
> GnutTLS?
> >>> >> > Json-C, ...? In any case, there are also insufficient resources
> to do
> >>> >> that.
> >>> >> >
> >>> >>
> >>> >> I'm not sure if there's a "supported platforms" list anywhere, but I
> >>> >> think everyone expects rsyslog to work with at least the latest
> stable
> >>> >> versions of major distributions (RHEL, Debian, Ubuntu, etc). It
> sounds
> >>> >> like there are three options:
> >>> >> 1. support all the GnuTLS versions coming with those distributions.
> It
> >>> >> sounds like it won't work, because of what you said above
> >>> >> 2. provide (or find?) a package that would upgrade the distro's
> GnuTLS
> >>> >> to provide what rsyslog needs. I guess it's the easiest approach,
> >>> >> although it might break other apps that need GnuTLS and aren't
> >>> >> forward-compatible
> >>> >> 3. provide a package that would install the needed GnuTLS version
> in a
> >>> >> separate location. We don't have to do it for all dependencies, only
> >>> >> for those who turn out to be problematic.
> >>> >>
> >>> >> What's it going to be? 1) seems to be out because it's difficuly, 3)
> >>> >> is a bit too hacky. So that leaves us with 2)? Or do you see other
> >>> >> options?
> >>> >>
> >>> >> Still, with either 2) or 3), I think we still have to see how to
> make
> >>> >> TCP work with newer GnuTLS versions. Or maybe there's something
> wrong
> >>> >> with the packages. Can I help with anything to solve this, or
> should I
> >>> >> wait for you to look into the issue?
> >>> >>
> >>> >> Best regards,
> >>> >> Radu
> >>> >> _______________________________________________
> >>> >> rsyslog mailing list
> >>> >> http://lists.adiscon.net/mailman/listinfo/rsyslog
> >>> >> http://www.rsyslog.com/professional-services/
> >>> >> What's up with rsyslog? Follow https://twitter.com/rgerhards
> >>> >> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
> >>> myriad
> >>> >> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if
> you
> >>> >> DON'T LIKE THAT.
> >>> >>
> >>> > _______________________________________________
> >>> > rsyslog mailing list
> >>> > http://lists.adiscon.net/mailman/listinfo/rsyslog
> >>> > http://www.rsyslog.com/professional-services/
> >>> > What's up with rsyslog? Follow https://twitter.com/rgerhards
> >>> > NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
> >>> myriad of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST
> if
> >>> you DON'T LIKE THAT.
> >>>
> >>>
> >>>
> >>> --
> >>> Performance Monitoring * Log Analytics * Search Analytics
> >>> Solr & Elasticsearch Support * http://sematext.com/
> >>> _______________________________________________
> >>> rsyslog mailing list
> >>> http://lists.adiscon.net/mailman/listinfo/rsyslog
> >>> http://www.rsyslog.com/professional-services/
> >>> What's up with rsyslog? Follow https://twitter.com/rgerhards
> >>> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a
> myriad
> >>> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> >>> DON'T LIKE THAT.
> >>>
> >>
> >>
> > _______________________________________________
> > rsyslog mailing list
> > http://lists.adiscon.net/mailman/listinfo/rsyslog
> > http://www.rsyslog.com/professional-services/
> > What's up with rsyslog? Follow https://twitter.com/rgerhards
> > NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> DON'T LIKE THAT.
>
>
>
> --
> Performance Monitoring * Log Analytics * Search Analytics
> Solr & Elasticsearch Support * http://sematext.com/
> _______________________________________________
> rsyslog mailing list
> http://lists.adiscon.net/mailman/listinfo/rsyslog
> http://www.rsyslog.com/professional-services/
> What's up with rsyslog? Follow https://twitter.com/rgerhards
> NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad
> of sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you
> DON'T LIKE THAT.
>
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE 
THAT.

Reply via email to