Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
oath_totp_validate_callback(3)	    liboath	oath_totp_validate_callback(3)

NAME
       oath_totp_validate_callback - API function

SYNOPSIS
       #include	<oath.h>

       int   oath_totp_validate_callback(const	 char  *  secret,  size_t  se-
       cret_length, time_t now,	unsigned time_step_size, time_t	 start_offset,
       unsigned	 digits,  size_t  window,  oath_validate_strcmp_function  str-
       cmp_otp,	void * strcmp_handle);

ARGUMENTS
       const char * secret
		   the shared secret string

       size_t secret_length
		   length of secret

       time_t now  Unix	time value to compute TOTP for

       unsigned	time_step_size
		   time	step system parameter (typically 30)

       time_t start_offset
		   Unix	time of	when to	start counting time  steps  (typically
		   0)

       unsigned	digits
		   number of requested digits in the OTP

       size_t window
		   how many OTPs after start counter to	test

       oath_validate_strcmp_function strcmp_otp
		   function pointer to a strcmp-like function.

       void * strcmp_handle
		   caller handle to be passed on to strcmp_otp.

DESCRIPTION
       Validate	an OTP according to OATH TOTP algorithm	per RFC	6238.

       Validation  is implemented by generating	a number of potential OTPs and
       performing a call to the	strcmp_otp function, to	compare	the  potential
       OTP against the given otp.  It has the following	prototype:

       int   (*oath_validate_strcmp_function)	(void	*handle,   const  char
       *test_otp);

       The function should be similar to strcmp	in that	it return  0  only  on
       matches.	  It differs by	permitting use of negative return codes	as in-
       dication	of internal failures in	the callback.  Positive	 values	 indi-
       cate OTP	mismatch.

       This callback interface is useful when you cannot compare OTPs directly
       using normal strcmp, but	instead	for example only have  a  hashed  OTP.
       You  would  then	 typically pass	in the hashed OTP in the strcmp_handle
       and let your implementation of strcmp_otp hash the test_otp  OTP	 using
       the same	hash, and then compare the results.

       Currently only OTP lengths of 6,	7 or 8 digits are supported.  This re-
       strictions may be lifted	in future versions, although some  limitations
       are inherent in the protocol.

RETURNS
       Returns	position  in  OTP window (zero is first	position), or OATH_IN-
       VALID_OTP if no OTP was found in	OTP window, or an error	code.

SINCE
       1.6.0

REPORTING BUGS
       Report bugs  to	<oath-toolkit-help@nongnu.org>.	  liboath  home	 page:
       http://www.gnu.org/software/liboath/  General  help using GNU software:
       http://www.gnu.org/gethelp/

COPYRIGHT
       Copyright (C) 2009-2016 Simon Josefsson.
       Copying and distribution	of this	file, with  or	without	 modification,
       are  permitted in any medium without royalty provided the copyright no-
       tice and	this notice are	preserved.

liboath				     2.6.2	oath_totp_validate_callback(3)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | RETURNS | SINCE | REPORTING BUGS | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=oath_totp_validate_callback&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help