From: Stephan Mueller <smueller@chronox.de>
To: noloader@gmail.com
Cc: linux-crypto@vger.kernel.org
Subject: Re: [ANNOUNCE] libkcapi v0.12.0 released
Date: Thu, 27 Oct 2016 04:52:07 +0200 [thread overview]
Message-ID: <10631833.2nPcTagHHZ@positron.chronox.de> (raw)
In-Reply-To: <CAH8yC8n+37D+4i6-WS8yZMLOm-LvMnVV93uWbPcOStwJRWvFWA@mail.gmail.com>
Am Mittwoch, 26. Oktober 2016, 22:05:28 CEST schrieb Jeffrey Walton:
Hi Jeffrey,
> > The Linux kernel exports a network interface of type AF_ALG to allow user
> > space to utilize the kernel crypto API. libkcapi uses this network
> > interface and exports an easy to use API so that a developer does not
> > need to consider the low-level network interface handling.
> >
> > The library does not implement any low level cipher algorithms. All
> > consumer requests are sent to the kernel for processing. Results from the
> > kernel crypto API are returned to the consumer via the library API.
> >
> > The kernel interface and therefore this library can be used by
> > unprivileged
> > processes.
> >
> > The library code archive also provides a drop-in replacement for the
> > command line tools of sha*sum, fipscheck/fipshmac and sha512hmac.
> >
> > The source code and the documentation is available at [1].
>
> That looks awesome Stephan.
>
> How can user code reliably detect when the API is available? Are there
The detection is done through the various _init calls such as
kcapi_cipher_init. They will return an error if AF_ALG is not available.
According to the documentation these calls return:
* @return 0 upon success; ENOENT - algorithm not available;
* -EOPNOTSUPP - AF_ALG family not available;
* -EINVAL - accept syscall failed
* -ENOMEM - cipher handle cannot be allocated
Technically, the bind operation will fail if the respective AF_ALG interface
is not available.
> any preprocessor macros to guard code paths in userland? What are the
There are no special guards. If AF_ALG is available, all user space processes
can use it.
> preprocessor macros we can use to guard it?
I am not entirely sure I understand the question.
>
> Jeff
Ciao
Stephan
next prev parent reply other threads:[~2016-10-27 2:52 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-27 1:54 [ANNOUNCE] libkcapi v0.12.0 released Stephan Mueller
2016-10-27 2:05 ` Jeffrey Walton
2016-10-27 2:52 ` Stephan Mueller [this message]
2016-10-27 22:53 ` Jeffrey Walton
2016-10-27 23:04 ` Stephan Mueller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=10631833.2nPcTagHHZ@positron.chronox.de \
--to=smueller@chronox.de \
--cc=linux-crypto@vger.kernel.org \
--cc=noloader@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.