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

FreeBSD Manual Pages

  
 
  

home | help
NTLM(3)		      User Contributed Perl Documentation	       NTLM(3)

NAME
       Authen::NTLM - An NTLM authentication module

SYNOPSIS
	   use Mail::IMAPClient;
	   use Authen::NTLM;
	   my $imap = Mail::IMAPClient->new(Server=>'imaphost');
	   ntlm_user($username);
	   ntlm_password($password);
	   $imap->authenticate("NTLM", Authen::NTLM::ntlm);
	   :
	   $imap->logout;
	   ntlm_reset;
	   :

       or

	   ntlmv2(1);
	   ntlm_user($username);
	   ntlm_host($host);
	   ntlm_password($password);
	   :

       or

	   my $ntlm = Authen::NTLM-> new(
	       host	=> $host,
	       user	=> $username,
	       domain	=> $domain,
	       password	=> $password,
	       version	=> 1,
	   );
	   $ntlm-> challenge;
	   :
	   $ntlm-> challenge($challenge);

DESCRIPTION
	   This	module provides	methods	to use NTLM authentication.  It	can
	   be used as an authenticate method with the Mail::IMAPClient module
	   to perform the challenge/response mechanism for NTLM	connections
	   or it can be	used on	its own	for NTLM authentication	with other
	   protocols (eg. HTTP).

	   The implementation is a direct port of the code from	F<fetchmail>
	   which, itself, has based its	NTLM implementation on F<samba>.  As
	   such, this code is not especially efficient,	however	it will	still
	   take	a fraction of a	second to negotiate a login on a PII which is
	   likely to be	good enough for	most situations.

   FUNCTIONS
       ntlm_domain()
	       Set the domain to use in	the NTLM authentication	messages.
	       Returns the new domain.	Without	an argument, this function
	       returns the current domain entry.

       ntlm_user()
	       Set the username	to use in the NTLM authentication messages.
	       Returns the new username.  Without an argument, this function
	       returns the current username entry.

       ntlm_password()
	       Set the password	to use in the NTLM authentication messages.
	       Returns the new password.  Without an argument, this function
	       returns the current password entry.

       ntlm_reset()
	       Resets the NTLM challenge/response state	machine	so that	the next
	       call to C<ntlm()> will produce an initial connect message.

       ntlm()
	       Generate	a reply	to a challenge.	 The NTLM protocol involves an
	       initial empty challenge from the	server requiring a message
	       response	containing the username	and domain (which may be empty).
	       The first call to C<ntlm()> generates this first	message	ignoring
	       any arguments.

	       The second time it is called, it	is assumed that	the argument is
	       the challenge string sent from the server.  This	will contain 8
	       bytes of	data which are used in the DES functions to generate the
	       response	authentication strings.	 The result of the call	is the
	       final authentication string.

	       If C<ntlm_reset()> is called, then the next call	to C<ntlm()> will
	       start the process again allowing	multiple authentications within
	       an application.

       ntlmv2()
	       Use NTLM	v2 authentication.

   OBJECT API
       new %options
	   Creates an object that accepts the following	options: "user",
	   "host", "domain", "password", "version".

       challenge [$challenge]
	   If $challenge is not	supplied, first-stage challenge	string is
	   generated.  Otherwise, the third-stage challenge is generated,
	   where $challenge is assumed to be extracted from the	second stage
	   of NTLM exchange. The result	of the call is the final
	   authentication string.

AUTHOR
	   David (Buzz)	Bussenschutt <davidbuzz@gmail.com> - current maintainer
	   Dmitry Karasik <dmitry@karasik.eu.org> - nice ntlmv2	patch, OO extensions.
	   Andrew Hobson <ahobson@infloop.com> - initial ntlmv2	code
	   Mark	Bush <Mark.Bush@bushnet.demon.co.uk> - perl port
	   Eric	S. Raymond - author of fetchmail
	   Andrew Tridgell and Jeremy Allison for SMB/Netbios code

SEE ALSO
       perl, Mail::IMAPClient, LWP::Authen::Ntlm

HISTORY
	   1.09	- fix CPAN ticket # 70703
	   1.08	- fix CPAN ticket # 39925
	   1.07	- not publicly released
	   1.06	- relicense as GPL+ or Artistic
	   1.05	- add OO interface by Dmitry Karasik
	   1.04	- implementation of NTLMv2 by Andrew Hobson/Dmitry Karasik
	   1.03	- fixes	long-standing 1	line bug L<http://rt.cpan.org/Public/Bug/Display.html?id=9521> - released by David Bussenschutt	9th Aug	2007
	   1.02	- released by Mark Bush	29th Oct 2001

perl v5.24.1			  2011-09-09			       NTLM(3)

NAME | SYNOPSIS | DESCRIPTION | AUTHOR | SEE ALSO | HISTORY

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

home | help