|
|
Subscribe / Log in / New account

First Release of LibreSSL Portable Available

First Release of LibreSSL Portable Available

Posted Jul 11, 2014 21:12 UTC (Fri) by mb (subscriber, #50428)
Parent article: First Release of LibreSSL Portable Available

What is the reason for splitting this into 'portable' and 'openbsd' variants?


to post comments

First Release of LibreSSL Portable Available

Posted Jul 11, 2014 21:22 UTC (Fri) by amacater (subscriber, #790) [Link]

This is the normal way that OpenBSD package OpenSSH and other packages: a version to run under OpenBSD itself and a "portable" package designed as a basis for use on other operating systems. They support the OpenBSD version natively and the other variant may be supported to a slightly lesser extent / on best endeavours or simply by the porters.

First Release of LibreSSL Portable Available

Posted Jul 11, 2014 21:23 UTC (Fri) by proski (subscriber, #104) [Link] (1 responses)

I believe the reason is the same as for OpenSSH. Developers working on the code should be focused on security and correctness, not on portability. Porting is done separately.

I don't think it's a perfect recipe for other kinds of software, but it's working well for security related code.

Same as SSH

Posted Jul 12, 2014 3:02 UTC (Sat) by david.a.wheeler (subscriber, #72896) [Link]

As noted above, it's the same way they handle SSH. I'm not a fan of this approach; I certainly wouldn't do it this way. But it seems to work for them.

First Release of LibreSSL Portable Available

Posted Jul 12, 2014 7:00 UTC (Sat) by troglobit (subscriber, #39178) [Link]

Because operating systems other than OpenBSD do not have all the API's needed to support each project: LiReSSL, OpenSSH, OpenNTPd, etc. The OpenBSD approach is to use safer APIs like strlcpy() & c:o that aren't supported by, e.g., GLIBC on Linux. The porting effort is, simply put, usually to add these API's in a local library for the given project so that it compiles and runs.

First Release of LibreSSL Portable Available

Posted Jul 12, 2014 23:06 UTC (Sat) by busterb (subscriber, #560) [Link]

They are different source trees.

portable is just the code needed to compile the portable libressl version. It is mostly shell scripts and automake stuff.

openbsd is a trimmed-down clone of the openbsd CVS tree, imported into git from cvs and mirrored on github. This is provided as a convenience so that Linux and other OS users can checkout the source as easily as possible. It is trimmed to only include the bits needed by libressl, so the download is just a few megabytes, rather than 3+GB for the whole openbsd source. But, it preserves all of the relevant history using cvs2git.

The portable tree, when you run 'autogen.sh', automatically downloads the openbsd tree and moves all the files into the right place for building the portable version. We are then able to automate the integration and release process somewhat, making it easier to provide rapid releases straight from the openbsd tree.

The first release tarball was generated largely automatically by running from scripts - it's pretty neat.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds