#
# This file is auto-generated. ***ANY*** changes here will be lost
#
# Kerberos Version: 1.2.4
# File: /krb5-1.2.4/src/include/krb5/kdb.h

package Authen::Krb5::KDB_H;
use vars qw(@EXPORT_OK %EXPORT_TAGS @ISA $VERSION);
use Exporter ();
use strict;

$VERSION = "1.07";
@ISA = qw(Exporter);

@EXPORT_OK = qw( KRB5_KDB_SALTTYPE_NORMAL KRB5_KDB_SALTTYPE_V4
	KRB5_KDB_SALTTYPE_NOREALM KRB5_KDB_SALTTYPE_ONLYREALM
	KRB5_KDB_SALTTYPE_SPECIAL KRB5_KDB_SALTTYPE_AFS3
	KRB5_KDB_DISALLOW_POSTDATED KRB5_KDB_DISALLOW_FORWARDABLE
	KRB5_KDB_DISALLOW_TGT_BASED KRB5_KDB_DISALLOW_RENEWABLE
	KRB5_KDB_DISALLOW_PROXIABLE KRB5_KDB_DISALLOW_DUP_SKEY
	KRB5_KDB_DISALLOW_ALL_TIX KRB5_KDB_REQUIRES_PRE_AUTH
	KRB5_KDB_REQUIRES_HW_AUTH KRB5_KDB_REQUIRES_PWCHANGE
	KRB5_KDB_DISALLOW_SVR KRB5_KDB_PWCHANGE_SERVICE KRB5_KDB_SUPPORT_DESMD5
	KRB5_KDB_NEW_PRINC KRB5_KDB_CREATE_BTREE KRB5_KDB_CREATE_HASH
	KRB5_KDB_V1_KEY_DATA_ARRAY KRB5_KDB_MAGIC_NUMBER
	KRB5_KDB_V1_BASE_LENGTH KRB5_TL_LAST_PWD_CHANGE KRB5_TL_MOD_PRINC
	KRB5_TL_KADM_DATA KRB5_TL_KADM5_E_DATA KRB5_TL_RB1_CHALLENGE
	KRB5_TL_SECURID_STATE KRB5_KDB_M_NAME KRB5_KDB_DEF_FLAGS );
	
%EXPORT_TAGS = (
  ALL => [ @EXPORT_OK ],

  SaltTypes => [qw( KRB5_KDB_SALTTYPE_NORMAL KRB5_KDB_SALTTYPE_V4
	KRB5_KDB_SALTTYPE_NOREALM KRB5_KDB_SALTTYPE_ONLYREALM
	KRB5_KDB_SALTTYPE_SPECIAL KRB5_KDB_SALTTYPE_AFS3 )],

  CreationFlags => [qw( KRB5_KDB_CREATE_BTREE KRB5_KDB_CREATE_HASH )],

  TLTypes => [qw( KRB5_TL_LAST_PWD_CHANGE KRB5_TL_MOD_PRINC
	KRB5_TL_KADM_DATA KRB5_TL_KADM5_E_DATA KRB5_TL_RB1_CHALLENGE
	KRB5_TL_SECURID_STATE )],

  Attributes => [qw( KRB5_KDB_DISALLOW_POSTDATED
	KRB5_KDB_DISALLOW_FORWARDABLE KRB5_KDB_DISALLOW_TGT_BASED
	KRB5_KDB_DISALLOW_RENEWABLE KRB5_KDB_DISALLOW_PROXIABLE
	KRB5_KDB_DISALLOW_DUP_SKEY KRB5_KDB_DISALLOW_ALL_TIX
	KRB5_KDB_REQUIRES_PRE_AUTH KRB5_KDB_REQUIRES_HW_AUTH
	KRB5_KDB_REQUIRES_PWCHANGE KRB5_KDB_DISALLOW_SVR
	KRB5_KDB_PWCHANGE_SERVICE KRB5_KDB_SUPPORT_DESMD5
	KRB5_KDB_NEW_PRINC )],

);

sub KRB5_KDB_SALTTYPE_NORMAL ()       { 0 }
sub KRB5_KDB_SALTTYPE_V4 ()           { 1 }
sub KRB5_KDB_SALTTYPE_NOREALM ()      { 2 }
sub KRB5_KDB_SALTTYPE_ONLYREALM ()    { 3 }
sub KRB5_KDB_SALTTYPE_SPECIAL ()      { 4 }
sub KRB5_KDB_SALTTYPE_AFS3 ()         { 5 }
sub KRB5_KDB_DISALLOW_POSTDATED ()    { 0x00000001 }
sub KRB5_KDB_DISALLOW_FORWARDABLE ()  { 0x00000002 }
sub KRB5_KDB_DISALLOW_TGT_BASED ()    { 0x00000004 }
sub KRB5_KDB_DISALLOW_RENEWABLE ()    { 0x00000008 }
sub KRB5_KDB_DISALLOW_PROXIABLE ()    { 0x00000010 }
sub KRB5_KDB_DISALLOW_DUP_SKEY ()     { 0x00000020 }
sub KRB5_KDB_DISALLOW_ALL_TIX ()      { 0x00000040 }
sub KRB5_KDB_REQUIRES_PRE_AUTH ()     { 0x00000080 }
sub KRB5_KDB_REQUIRES_HW_AUTH ()      { 0x00000100 }
sub KRB5_KDB_REQUIRES_PWCHANGE ()     { 0x00000200 }
sub KRB5_KDB_DISALLOW_SVR ()          { 0x00001000 }
sub KRB5_KDB_PWCHANGE_SERVICE ()      { 0x00002000 }
sub KRB5_KDB_SUPPORT_DESMD5 ()        { 0x00004000 }
sub KRB5_KDB_NEW_PRINC ()             { 0x00008000 }
sub KRB5_KDB_CREATE_BTREE ()          { 0x00000001 }
sub KRB5_KDB_CREATE_HASH ()           { 0x00000002 }
sub KRB5_KDB_V1_KEY_DATA_ARRAY ()     { 2 }
sub KRB5_KDB_MAGIC_NUMBER ()          { 0xdbdbdbdb }
sub KRB5_KDB_V1_BASE_LENGTH ()        { 38 }
sub KRB5_TL_LAST_PWD_CHANGE ()        { 0x0001 }
sub KRB5_TL_MOD_PRINC ()              { 0x0002 }
sub KRB5_TL_KADM_DATA ()              { 0x0003 }
sub KRB5_TL_KADM5_E_DATA ()           { 0x0004 }
sub KRB5_TL_RB1_CHALLENGE ()          { 0x0005 }
sub KRB5_TL_SECURID_STATE ()          { 0x0006 }
sub KRB5_KDB_M_NAME ()                { "K/M" }
sub KRB5_KDB_DEF_FLAGS ()             { 0 }

1;
__END__

=head1 NAME

Authen::Krb5::KDB_H - Kerberos V5 Database Constants

=head1 SYNOPSIS

    use Authen::Krb5::KDB_H;
    use Authen::Krb5::KDB_H qw(KRB5_KDB_REQUIRES_PRE_AUTH);
    use Authen::Krb5::KDB_H qw(:Attributes);
    use Authen::Krb5::KDB_H qw(:ALL);

    if ($p->attributes & KRB5_KDB_REQUIRES_PRE_AUTH) {
	print $p->name, ": Requires Pre Auth\n";
    }


=head1 DESCRIPTION

This module allows access to the KRB5_* constants in Kerberos source
file F<include/krb5/kdb.h>.  Nothing is exported by default so you
either need to export the constants you need or use on the following
Export Tags:

=over 4

=item :Attributes

KRB5_KDB_DISALLOW_POSTDATED  KRB5_KDB_DISALLOW_FORWARDABLE
KRB5_KDB_DISALLOW_TGT_BASED  KRB5_KDB_DISALLOW_RENEWABLE
KRB5_KDB_DISALLOW_PROXIABLE  KRB5_KDB_DISALLOW_DUP_SKEY
KRB5_KDB_DISALLOW_ALL_TIX  KRB5_KDB_REQUIRES_PRE_AUTH
KRB5_KDB_REQUIRES_HW_AUTH  KRB5_KDB_REQUIRES_PWCHANGE
KRB5_KDB_DISALLOW_SVR  KRB5_KDB_PWCHANGE_SERVICE
KRB5_KDB_SUPPORT_DESMD5  KRB5_KDB_NEW_PRINC

=back

=over 4

=item :CreationFlags

KRB5_KDB_CREATE_BTREE  KRB5_KDB_CREATE_HASH

=back

=over 4

=item :SaltTypes

KRB5_KDB_SALTTYPE_NORMAL  KRB5_KDB_SALTTYPE_V4  KRB5_KDB_SALTTYPE_NOREALM
KRB5_KDB_SALTTYPE_ONLYREALM  KRB5_KDB_SALTTYPE_SPECIAL
KRB5_KDB_SALTTYPE_AFS3

=back

=over 4

=item :TLTypes

KRB5_TL_LAST_PWD_CHANGE  KRB5_TL_MOD_PRINC  KRB5_TL_KADM_DATA
KRB5_TL_KADM5_E_DATA  KRB5_TL_RB1_CHALLENGE  KRB5_TL_SECURID_STATE

=back

=over 4

=item :ALL

KRB5_KDB_SALTTYPE_NORMAL  KRB5_KDB_SALTTYPE_V4  KRB5_KDB_SALTTYPE_NOREALM
KRB5_KDB_SALTTYPE_ONLYREALM  KRB5_KDB_SALTTYPE_SPECIAL
KRB5_KDB_SALTTYPE_AFS3  KRB5_KDB_DISALLOW_POSTDATED
KRB5_KDB_DISALLOW_FORWARDABLE  KRB5_KDB_DISALLOW_TGT_BASED
KRB5_KDB_DISALLOW_RENEWABLE  KRB5_KDB_DISALLOW_PROXIABLE
KRB5_KDB_DISALLOW_DUP_SKEY  KRB5_KDB_DISALLOW_ALL_TIX
KRB5_KDB_REQUIRES_PRE_AUTH  KRB5_KDB_REQUIRES_HW_AUTH
KRB5_KDB_REQUIRES_PWCHANGE  KRB5_KDB_DISALLOW_SVR
KRB5_KDB_PWCHANGE_SERVICE  KRB5_KDB_SUPPORT_DESMD5  KRB5_KDB_NEW_PRINC
KRB5_KDB_CREATE_BTREE  KRB5_KDB_CREATE_HASH  KRB5_KDB_V1_KEY_DATA_ARRAY
KRB5_KDB_MAGIC_NUMBER  KRB5_KDB_V1_BASE_LENGTH  KRB5_TL_LAST_PWD_CHANGE
KRB5_TL_MOD_PRINC  KRB5_TL_KADM_DATA  KRB5_TL_KADM5_E_DATA
KRB5_TL_RB1_CHALLENGE  KRB5_TL_SECURID_STATE  KRB5_KDB_M_NAME
KRB5_KDB_DEF_FLAGS

=back


=head1 AUTHOR

Dave Steiner, E<lt>steiner@bakerst.rutgers.eduE<gt>

=head1 COPYRIGHT

Copyright (c) 2002 David K. Steiner. All rights reserved.

This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.

=head1 SEE ALSO

perl(1), kerberos(1), Authen::Krb5::KDB.

=cut

