[nanomsg] nng & older Linux versions

  • From: "Garrett D'Amore" <garrett@xxxxxxxxxx>
  • To: "nanomsg@xxxxxxxxxxxxx" <nanomsg@xxxxxxxxxxxxx>
  • Date: Fri, 27 Oct 2017 22:40:12 +0000

I’m currently looking at code that uses some “modern” linux APIs like
eventfd and epoll. This code is currently not conditioned on the kernel
version.  That could be bad.

The eventfd stuff in particular was introduced in kernel version 2.6.22.
Which means kernels older than that won’t work without modification.

To give some idea, this means RHEL 6.0 or newer, Ubuntu 7.10 or newer.

If you have a need for nanomsg on older platforms, and in particular need
new application / library support for such platforms, I’d like to know.  I
don’t at present have any test capability for anything older than 2.8 or
so.  I *can* support older platforms if there is a need, but before I go to
the effort I want to make sure that there is demand for it.

Recall also Windows support requires Windows Vista or better.  That isn’t
changing.  There’s probably a minimum macOS version as well, but at present
I don’t know what it is beyond 10.0.  (What’s the earliest version with
kqueue support for example?

I’m also interested in hearing if anyone is still needing to support older
versions of other systems, and still wants to do new app development or
deploys for them?

Obviously it’s to my advantage to support the systems where there is
demand, and not to waste my effort worrying about the ones where there is
no market demand.  And by being willing to cut off Windows XP I think I
demonstrate just how far out of my way I’m willing to go to support old
systems.  (To be fair, supporting Windows XP properly would be “hard”
because of substantial missing functionality, like condvars, and slim
reader/writer locks, etc.)

 - Garrett

Other related posts: