Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
C Shell

make sure there is always at least one handle

found with clang scan-build
latest commit 90e108f0a4
@klali klali authored
Failed to load latest commit information.
m4 Add shared library versioning script. Use valgrind for self-tests.
tests add a test exposing issue #25
.gitignore add coverage processing
.travis.yml add coverage processing
AUTHORS expand the AUTHORS file
BLURB Doc fix.
COPYING Bump years.
Makefile.am add help2adoc for releases
NEWS bump versions
README Update README
README.adoc symlinked README
build-and-test.sh add coverage processing
cdecode.c fix indentation
cdecode.h Indent code.
cencode.c Indent code.
cencode.h Indent code.
configure.ac add help2adoc for releases
hmac.c Indent code.
libykclient.map add an interface to fetch the last server response
sha-private.h Indent code.
sha.h Indent code.
sha1.c Indent code.
sha224-256.c Indent code.
sha384-512.c Indent code.
tool.c tool: use server response to print out more debug info
usha.c Indent code.
ykclient.c make sure there is always at least one handle
ykclient.h add an interface to fetch the last server response
ykclient_errors.h Cleanup ykclient_errors.h split.
ykclient_server_response.c Fix subdir-objects breakage with latest automake.
ykclient_server_response.h Indent code.
ykclient_version.c Indent code.
ykclient_version.h.in Indent code.

README.adoc

YubiKey C Client Library: libykclient

YubiKey C Client Library (libykclient) is a C library used to validate an Yubikey OTP against Yubico’s servers. See the Yubico website for more information about Yubico and the YubiKey.

Building

After downloading and unpacking the package tarball, you build it as follows.

./configure
make check
sudo make install

Building from version controlled sources

Warning! This is only for developers and if you don’t understand what you are doing, you should download the release files instead.

You may check out the sources using Git with the following command:

git clone git://github.com/Yubico/yubico-c-client.git

This will create a directory 'yubico-c-client'. Enter the directory:

cd yubico-c-client

Recent versions of autoconf, automake and libtool must be installed. Help2man is used to generate the manpages. Libcurl development files (headers and *.so) must also be installed.

Generate the build system using:

autoreconf --install

Then refer to the user sections above regarding building.

Command-line tools

There is one command line tool, ykclient, to validate a particular OTP. It needs a client id, which you can generate here.

Example usage:

jas@mocca:~/src/yubico-c-client$ ./ykclient
Usage: ./ykclient <client_id> <yubikey_otp>
 CLIENT_ID: your client id integer
 YUBIKEY_OTP: One-time password generated by yubikey
jas@mocca:~/src/yubico-c-client$ ./ykclient --debug 16 ccccccbchvthlivuitriujjifivbvtrjkjfirllluurj
Input:
  client id: 16
  token: ccccccbchvthlivuitriujjifivbvtrjkjfirllluurj
Verification output (2): Yubikey OTP was replayed (REPLAYED_OTP)
jas@mocca:~/src/yubico-c-client$

License

The project is licensed under a BSD license. See the file COPYING for exact wording. For any copyright year range specified as YYYY-ZZZZ in this package note that the range specifies every single year in that closed interval.

Something went wrong with that request. Please try again.