Initial Windows port

This commit is contained in:
Asanka Herath
2009-07-22 15:55:45 -04:00
committed by Love Hornquist Astrand
parent 25a2ac726b
commit b1063ea8fc
361 changed files with 11994 additions and 1334 deletions

37
NTMakefile Normal file
View File

@@ -0,0 +1,37 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
SUBDIRS = include lib kuser kdc admin kadmin kpasswd appl doc tools tests packages etc
!include windows/NTMakefile.w32
all::
@echo Build finished succesfully

35
admin/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=admin
!include ../windows/NTMakefile.w32

35
appl/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl
!include ../windows/NTMakefile.w32

35
appl/afsutil/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\afsutil
!include ../../windows/NTMakefile.w32

35
appl/dceutils/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\dceutils
!include ../../windows/NTMakefile.w32

View File

@@ -55,7 +55,7 @@ typedef unsigned char krb5_octet;
typedef krb5_octet krb5_boolean;
typedef krb5short krb5_keytype; /* in k5.2 it's a short */
typedef krb5_int32 krb5_flags;
typedef krb5_int32 krb5_timestamp;
typedef krb5_int32 krb5_timestamp; /* is a time_t in krb5.h */
typedef char * krb5_pointer; /* pointer to unexposed data */

35
appl/ftp/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp
!include ../../windows/NTMakefile.w32

View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp\common
!include ../../../windows/NTMakefile.w32

35
appl/ftp/ftp/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp\ftp
!include ../../../windows/NTMakefile.w32

35
appl/ftp/ftpd/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp\ftpd
!include ../../../windows/NTMakefile.w32

35
appl/gssmask/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\gssmask
!include ../../windows/NTMakefile.w32

35
appl/kf/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\kf
!include ../../windows/NTMakefile.w32

35
appl/kx/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\kx
!include ../../windows/NTMakefile.w32

35
appl/login/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\login
!include ../../windows/NTMakefile.w32

35
appl/otp/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\otp
!include ../../windows/NTMakefile.w32

35
appl/popper/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\popper
!include ../../windows/NTMakefile.w32

35
appl/push/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\push
!include ../../windows/NTMakefile.w32

35
appl/rcp/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\rcp
!include ../../windows/NTMakefile.w32

35
appl/rsh/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\rsh
!include ../../windows/NTMakefile.w32

35
appl/su/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\su
!include ../../windows/NTMakefile.w32

35
appl/telnet/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\telnet
!include ../../windows/NTMakefile.w32

View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\telnet\libtelnet
!include ../../../windows/NTMakefile.w32

View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\telnet\telnet
!include ../../../windows/NTMakefile.w32

View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\telnet\telnetd
!include ../../../windows/NTMakefile.w32

35
appl/test/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\test
!include ../../windows/NTMakefile.w32

35
appl/xnlock/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\xnlock
!include ../../windows/NTMakefile.w32

View File

@@ -316,24 +316,30 @@ extern \"C\" {
}
if ($opt_E) {
$public_h_header .= "#ifndef $opt_E
#ifndef ${opt_E}_FUNCTION
#if defined(_WIN32)
#define ${opt_E}_FUNCTION __stdcall __declspec(dllimport)
#define ${opt_E}_FUNCTION __declspec(dllimport)
#define ${opt_E}_CALL __stdcall
#define ${opt_E}_VARIABLE __declspec(dllimport)
#else
#define ${opt_E}_FUNCTION
#define ${opt_E}_VARIABLE
#endif
#endif
#endif
";
$private_h_header .= "#ifndef $opt_E
#ifndef ${opt_E}_FUNCTION
#if defined(_WIN32)
#define ${opt_E}_FUNCTION __stdcall __declspec(dllimport)
#define ${opt_E}_FUNCTION __declspec(dllimport)
#define ${opt_E}_CALL __stdcall
#define ${opt_E}_VARIABLE __declspec(dllimport)
#else
#define ${opt_E}_FUNCTION
#define ${opt_E}_VARIABLE
#define ${opt_E}_CALL
#endif
#endif
#endif

View File

@@ -3,7 +3,8 @@ dnl rk_WIN32_EXPORT buildsymbol symbol-that-export
AC_DEFUN([rk_WIN32_EXPORT],[AH_TOP([#ifdef $1
#ifndef $2
#ifdef _WIN32_
#define $2_FUNCTION __declspec(dllexport) __stdcall
#define $2_FUNCTION __declspec(dllexport)
#define $2_CALL __stdcall
#define $2_VARIABLE __declspec(dllexport)
#else
#define $2_FUNCTION

35
doc/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=doc
!include ../windows/NTMakefile.w32

35
etc/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=etc
!include ../windows/NTMakefile.w32

116
include/NTMakefile Normal file
View File

@@ -0,0 +1,116 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=include
SUBDIRS=kadm5 hcrypto gssapi
!include ../windows/NTMakefile.w32
!include ../windows/NTMakefile.config
INCFILES= \
$(INCDIR)\config.h \
$(INCDIR)\version.h \
$(INCDIR)\krb5-types.h \
$(INCDIR)\crypto-headers.h
MAKECRYPTO=$(OBJ)\make_crypto.exe
$(MAKECRYPTO): $(OBJ)\make_crypto.obj
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
$(INCDIR)\krb5-types.h: krb5-types.h.w32
$(CP) $** $@
$(INCDIR)\crypto-headers.h: $(MAKECRYPTO)
$(MAKECRYPTO) $@
$(INCDIR)\config.h: config.h.w32 ..\windows\NTMakefile.config NTMakefile
$(PERL) << < config.h.w32 > $@
while(<>) {
if (m/\@FEATURE_DEFS\@/) {
if ("$(KRB5)") { print "#define KRB5 1\n"; }
if ("$(PKINIT)") { print "#define PKINIT 1\n"; }
if ("$(NO_AFS)") { print "#define NO_AFS 1\n"; }
if ("$(OPENLDAP)") { print "#define OPENLDAP 1\n"; }
if ("$(OPENLDAP_MODULE)") { print "#define OPENLDAP_MODULE 1\n"; }
if ("$(OTP)") { print "#define OTP 1 \n"; }
if ("$(AUTHENTICATION)") { print "#define AUTHENTICATION 1\n"; }
if ("$(DIAGNOSTICS)") { print "#define DIAGNOSTICS 1\n"; }
if ("$(ENCRYPTION)") { print "#define ENCRYPTION 1\n"; }
if ("$(ENABLE_AFS_STRING_TO_KEY)") { print "#define ENABLE_AFS_STRING_TO_KEY 1\n"; }
if ("$(ENABLE_PTHREAD_SUPPORT)") { print "#define ENABLE_PTHREAD_SUPPORT 1\n"; }
if ("$(HAVE_PTHREAD_H)") { print "#define HAVE_PTHREAD_H 1\n"; }
if ("$(ENV_HACK)") { print "#define ENV_HACK 1\n"; }
if ("$(HAVE_KCM)") { print "#define HAVE_KCM 1\n"; }
} elsif (m/\@VERSION_OPTDEFS\@/) {
if ("$(VER_PRERELEASE)") { print "#define VER_PRERELEASE 1\n"; }
if ("$(VER_PRIVATE)") { print "#define VER_PRIVATE \"$(VER_PRIVATE)\""; }
if ("$(VER_SPECIAL)") { print "#define VER_SPECIAL \"$(VER_SPECIAL)\""; }
if ("$(BUILD)" =~ "dbg") { print "#define VER_DEBUG 1\n"; }
} else {
s/\@PACKAGE\@/$(VER_PACKAGE)/;
s/\@PACKAGE_NAME\@/$(VER_PACKAGE_NAME)/;
s/\@PACKAGE_BUGREPORT\@/$(VER_PACKAGE_BUGREPORT:@=\@)/;
s/\@PACKAGE_VERSION\@/$(VER_PACKAGE_VERSION)/;
s/\@PACKAGE_COPYRIGHT\@/$(VER_PACKAGE_COPYRIGHT)/;
s/\@PACKAGE_COMPANY\@/$(VER_PACKAGE_COMPANY)/;
s/\@MAJOR\@/$(VER_PRODUCT_MAJOR)/;
s/\@MINOR\@/$(VER_PRODUCT_MINOR)/;
s/\@AUX\@/$(VER_PRODUCT_AUX)/;
s/\@PATCH\@/$(VER_PRODUCT_PATCH)/;
print $_;
}
}
<<
$(INCDIR)\version.h: ..\windows\NTMakefile.config NTMakefile
$(CP) << $@
const char *heimdal_long_version = "@(#)$$Version: $(VER_PACKAGE_NAME) $(VER_PACKAGE_VERSION) by $(USERNAME) on $(COMPUTERNAME) ($(CPU)-pc-windows) $$";
const char *heimdal_version = "$(VER_PACKAGE_NAME) $(VER_PACKAGE_VERSION)";
<<
all:: $(INCFILES)
clean::
$(RM) $(INCFILES)

1535
include/config.h.w32 Normal file

File diff suppressed because it is too large Load Diff

34
include/gssapi/NTMakefile Normal file
View File

@@ -0,0 +1,34 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=include\gssapi
!include ../../windows/NTMakefile.w32

View File

@@ -0,0 +1,34 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=include\hcrypto
!include ../../windows/NTMakefile.w32

34
include/kadm5/NTMakefile Normal file
View File

@@ -0,0 +1,34 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=include\kadm5
!include ../../windows/NTMakefile.w32

61
include/krb5-types.h.w32 Normal file
View File

@@ -0,0 +1,61 @@
/***********************************************************************
* Copyright (c) 2009, Secure Endpoints Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
**********************************************************************/
#ifndef __krb5_types_h__
#define __krb5_types_h__
#ifndef __BIT_TYPES_DEFINED__
#define __BIT_TYPES_DEFINED__
typedef signed char int8_t;
typedef short int int16_t;
typedef int int32_t;
typedef __int64 int64_t;
typedef unsigned char uint8_t;
typedef unsigned short int uint16_t;
typedef unsigned int uint32_t;
typedef unsigned __int64 uint64_t;
typedef uint8_t u_int8_t;
typedef uint16_t u_int16_t;
typedef uint32_t u_int32_t;
typedef uint64_t u_int64_t;
#endif /* __BIT_TYPES_DEFINED__ */
typedef int krb5_socklen_t;
#ifdef _WIN64
typedef __int64 krb5_ssize_t;
#else
typedef int krb5_ssize_t;
#endif
#endif /* __krb5_types_h__ */

35
kadmin/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=kadmin
!include ../windows/NTMakefile.w32

35
kcm/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=kcm
!include ../windows/NTMakefile.w32

35
kdc/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=kdc
!include ../windows/NTMakefile.w32

35
kpasswd/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=kpasswd
!include ../windows/NTMakefile.w32

35
kuser/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=kuser
!include ../windows/NTMakefile.w32

35
lib/45/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=.\lib\45
!include ../../windows/NTMakefile.w32

54
lib/NTMakefile Normal file
View File

@@ -0,0 +1,54 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
!ifdef KRB4
dir_45 = 45
!endif
!ifdef OTP
dir_otp = otp
!endif
!ifdef DCE
dir_dce = kdfs
!endif
!ifndef HAVE_OPENSSL
dir_hcrypto = hcrypto
!endif
SUBDIRS = roken vers editline com_err sl wind asn1 sqlite \
$(dir_hcrypto) hx509 krb5 ntlm kafs gssapi hdb kadm5 \
auth $(dir_45) $(dir_otp) $(dir_dce)
!include ../windows/NTMakefile.w32
all:: subdirs
clean:: clean-subdirs

690
lib/asn1/NTMakefile Normal file
View File

@@ -0,0 +1,690 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\asn1
!include ../../windows/NTMakefile.w32
gen_files_k5 = \
$(OBJ)\asn1_AD_AND_OR.x \
$(OBJ)\asn1_AD_IF_RELEVANT.x \
$(OBJ)\asn1_AD_KDCIssued.x \
$(OBJ)\asn1_AD_MANDATORY_FOR_KDC.x \
$(OBJ)\asn1_AD_LoginAlias.x \
$(OBJ)\asn1_APOptions.x \
$(OBJ)\asn1_AP_REP.x \
$(OBJ)\asn1_AP_REQ.x \
$(OBJ)\asn1_AS_REP.x \
$(OBJ)\asn1_AS_REQ.x \
$(OBJ)\asn1_AUTHDATA_TYPE.x \
$(OBJ)\asn1_Authenticator.x \
$(OBJ)\asn1_AuthorizationData.x \
$(OBJ)\asn1_AuthorizationDataElement.x \
$(OBJ)\asn1_CKSUMTYPE.x \
$(OBJ)\asn1_ChangePasswdDataMS.x \
$(OBJ)\asn1_Checksum.x \
$(OBJ)\asn1_ENCTYPE.x \
$(OBJ)\asn1_ETYPE_INFO.x \
$(OBJ)\asn1_ETYPE_INFO2.x \
$(OBJ)\asn1_ETYPE_INFO2_ENTRY.x \
$(OBJ)\asn1_ETYPE_INFO_ENTRY.x \
$(OBJ)\asn1_EncAPRepPart.x \
$(OBJ)\asn1_EncASRepPart.x \
$(OBJ)\asn1_EncKDCRepPart.x \
$(OBJ)\asn1_EncKrbCredPart.x \
$(OBJ)\asn1_EncKrbPrivPart.x \
$(OBJ)\asn1_EncTGSRepPart.x \
$(OBJ)\asn1_EncTicketPart.x \
$(OBJ)\asn1_EncryptedData.x \
$(OBJ)\asn1_EncryptionKey.x \
$(OBJ)\asn1_EtypeList.x \
$(OBJ)\asn1_HostAddress.x \
$(OBJ)\asn1_HostAddresses.x \
$(OBJ)\asn1_KDCOptions.x \
$(OBJ)\asn1_KDC_REP.x \
$(OBJ)\asn1_KDC_REQ.x \
$(OBJ)\asn1_KDC_REQ_BODY.x \
$(OBJ)\asn1_KRB_CRED.x \
$(OBJ)\asn1_KRB_ERROR.x \
$(OBJ)\asn1_KRB_PRIV.x \
$(OBJ)\asn1_KRB_SAFE.x \
$(OBJ)\asn1_KRB_SAFE_BODY.x \
$(OBJ)\asn1_KerberosString.x \
$(OBJ)\asn1_KerberosTime.x \
$(OBJ)\asn1_KrbCredInfo.x \
$(OBJ)\asn1_LR_TYPE.x \
$(OBJ)\asn1_LastReq.x \
$(OBJ)\asn1_MESSAGE_TYPE.x \
$(OBJ)\asn1_METHOD_DATA.x \
$(OBJ)\asn1_NAME_TYPE.x \
$(OBJ)\asn1_PADATA_TYPE.x \
$(OBJ)\asn1_PA_DATA.x \
$(OBJ)\asn1_PA_ENC_SAM_RESPONSE_ENC.x \
$(OBJ)\asn1_PA_ENC_TS_ENC.x \
$(OBJ)\asn1_PA_PAC_REQUEST.x \
$(OBJ)\asn1_PA_S4U2Self.x \
$(OBJ)\asn1_PA_SAM_CHALLENGE_2.x \
$(OBJ)\asn1_PA_SAM_CHALLENGE_2_BODY.x \
$(OBJ)\asn1_PA_SAM_REDIRECT.x \
$(OBJ)\asn1_PA_SAM_RESPONSE_2.x \
$(OBJ)\asn1_PA_SAM_TYPE.x \
$(OBJ)\asn1_PA_ClientCanonicalized.x \
$(OBJ)\asn1_PA_ClientCanonicalizedNames.x \
$(OBJ)\asn1_PA_SvrReferralData.x \
$(OBJ)\asn1_PA_ServerReferralData.x \
$(OBJ)\asn1_PA_SERVER_REFERRAL_DATA.x \
$(OBJ)\asn1_PROV_SRV_LOCATION.x \
$(OBJ)\asn1_Principal.x \
$(OBJ)\asn1_PrincipalName.x \
$(OBJ)\asn1_Realm.x \
$(OBJ)\asn1_SAMFlags.x \
$(OBJ)\asn1_TGS_REP.x \
$(OBJ)\asn1_TGS_REQ.x \
$(OBJ)\asn1_TYPED_DATA.x \
$(OBJ)\asn1_Ticket.x \
$(OBJ)\asn1_TicketFlags.x \
$(OBJ)\asn1_TransitedEncoding.x \
$(OBJ)\asn1_TypedData.x \
$(OBJ)\asn1_krb5int32.x \
$(OBJ)\asn1_krb5uint32.x \
$(OBJ)\asn1_KRB5SignedPathData.x \
$(OBJ)\asn1_KRB5SignedPathPrincipals.x \
$(OBJ)\asn1_KRB5SignedPath.x
gen_files_cms = \
$(OBJ)\asn1_CMSAttributes.x \
$(OBJ)\asn1_CMSCBCParameter.x \
$(OBJ)\asn1_CMSEncryptedData.x \
$(OBJ)\asn1_CMSIdentifier.x \
$(OBJ)\asn1_CMSRC2CBCParameter.x \
$(OBJ)\asn1_CMSVersion.x \
$(OBJ)\asn1_CertificateList.x \
$(OBJ)\asn1_CertificateRevocationLists.x \
$(OBJ)\asn1_CertificateSet.x \
$(OBJ)\asn1_ContentEncryptionAlgorithmIdentifier.x \
$(OBJ)\asn1_ContentInfo.x \
$(OBJ)\asn1_ContentType.x \
$(OBJ)\asn1_DigestAlgorithmIdentifier.x \
$(OBJ)\asn1_DigestAlgorithmIdentifiers.x \
$(OBJ)\asn1_EncapsulatedContentInfo.x \
$(OBJ)\asn1_EncryptedContent.x \
$(OBJ)\asn1_EncryptedContentInfo.x \
$(OBJ)\asn1_EncryptedKey.x \
$(OBJ)\asn1_EnvelopedData.x \
$(OBJ)\asn1_IssuerAndSerialNumber.x \
$(OBJ)\asn1_KeyEncryptionAlgorithmIdentifier.x \
$(OBJ)\asn1_KeyTransRecipientInfo.x \
$(OBJ)\asn1_MessageDigest.x \
$(OBJ)\asn1_OriginatorInfo.x \
$(OBJ)\asn1_RecipientIdentifier.x \
$(OBJ)\asn1_RecipientInfo.x \
$(OBJ)\asn1_RecipientInfos.x \
$(OBJ)\asn1_SignatureAlgorithmIdentifier.x \
$(OBJ)\asn1_SignatureValue.x \
$(OBJ)\asn1_SignedData.x \
$(OBJ)\asn1_SignerIdentifier.x \
$(OBJ)\asn1_SignerInfo.x \
$(OBJ)\asn1_SignerInfos.x \
$(OBJ)\asn1_id_pkcs7.x \
$(OBJ)\asn1_id_pkcs7_data.x \
$(OBJ)\asn1_id_pkcs7_digestedData.x \
$(OBJ)\asn1_id_pkcs7_encryptedData.x \
$(OBJ)\asn1_id_pkcs7_envelopedData.x \
$(OBJ)\asn1_id_pkcs7_signedAndEnvelopedData.x \
$(OBJ)\asn1_id_pkcs7_signedData.x \
$(OBJ)\asn1_UnprotectedAttributes.x
gen_files_rfc2459 = \
$(OBJ)\asn1_Version.x \
$(OBJ)\asn1_id_pkcs_1.x \
$(OBJ)\asn1_id_pkcs1_rsaEncryption.x \
$(OBJ)\asn1_id_pkcs1_md2WithRSAEncryption.x \
$(OBJ)\asn1_id_pkcs1_md5WithRSAEncryption.x \
$(OBJ)\asn1_id_pkcs1_sha1WithRSAEncryption.x \
$(OBJ)\asn1_id_pkcs1_sha256WithRSAEncryption.x \
$(OBJ)\asn1_id_pkcs1_sha384WithRSAEncryption.x \
$(OBJ)\asn1_id_pkcs1_sha512WithRSAEncryption.x \
$(OBJ)\asn1_id_heim_rsa_pkcs1_x509.x \
$(OBJ)\asn1_id_pkcs_2.x \
$(OBJ)\asn1_id_pkcs2_md2.x \
$(OBJ)\asn1_id_pkcs2_md4.x \
$(OBJ)\asn1_id_pkcs2_md5.x \
$(OBJ)\asn1_id_rsa_digestAlgorithm.x \
$(OBJ)\asn1_id_rsa_digest_md2.x \
$(OBJ)\asn1_id_rsa_digest_md4.x \
$(OBJ)\asn1_id_rsa_digest_md5.x \
$(OBJ)\asn1_id_pkcs_3.x \
$(OBJ)\asn1_id_pkcs3_rc2_cbc.x \
$(OBJ)\asn1_id_pkcs3_rc4.x \
$(OBJ)\asn1_id_pkcs3_des_ede3_cbc.x \
$(OBJ)\asn1_id_rsadsi_encalg.x \
$(OBJ)\asn1_id_rsadsi_rc2_cbc.x \
$(OBJ)\asn1_id_rsadsi_des_ede3_cbc.x \
$(OBJ)\asn1_id_secsig_sha_1.x \
$(OBJ)\asn1_id_nistAlgorithm.x \
$(OBJ)\asn1_id_nist_aes_algs.x \
$(OBJ)\asn1_id_aes_128_cbc.x \
$(OBJ)\asn1_id_aes_192_cbc.x \
$(OBJ)\asn1_id_aes_256_cbc.x \
$(OBJ)\asn1_id_nist_sha_algs.x \
$(OBJ)\asn1_id_sha256.x \
$(OBJ)\asn1_id_sha224.x \
$(OBJ)\asn1_id_sha384.x \
$(OBJ)\asn1_id_sha512.x \
$(OBJ)\asn1_id_dhpublicnumber.x \
$(OBJ)\asn1_id_x9_57.x \
$(OBJ)\asn1_id_dsa.x \
$(OBJ)\asn1_id_dsa_with_sha1.x \
$(OBJ)\asn1_id_x520_at.x \
$(OBJ)\asn1_id_at_commonName.x \
$(OBJ)\asn1_id_at_surname.x \
$(OBJ)\asn1_id_at_serialNumber.x \
$(OBJ)\asn1_id_at_countryName.x \
$(OBJ)\asn1_id_at_localityName.x \
$(OBJ)\asn1_id_at_streetAddress.x \
$(OBJ)\asn1_id_at_stateOrProvinceName.x \
$(OBJ)\asn1_id_at_organizationName.x \
$(OBJ)\asn1_id_at_organizationalUnitName.x \
$(OBJ)\asn1_id_at_name.x \
$(OBJ)\asn1_id_at_givenName.x \
$(OBJ)\asn1_id_at_initials.x \
$(OBJ)\asn1_id_at_generationQualifier.x \
$(OBJ)\asn1_id_at_pseudonym.x \
$(OBJ)\asn1_id_Userid.x \
$(OBJ)\asn1_id_domainComponent.x \
$(OBJ)\asn1_id_x509_ce.x \
$(OBJ)\asn1_id_uspkicommon_card_id.x \
$(OBJ)\asn1_id_uspkicommon_piv_interim.x \
$(OBJ)\asn1_id_netscape.x \
$(OBJ)\asn1_id_netscape_cert_comment.x \
$(OBJ)\asn1_id_ms_cert_enroll_domaincontroller.x \
$(OBJ)\asn1_id_ms_client_authentication.x \
$(OBJ)\asn1_AlgorithmIdentifier.x \
$(OBJ)\asn1_AttributeType.x \
$(OBJ)\asn1_AttributeValue.x \
$(OBJ)\asn1_TeletexStringx.x \
$(OBJ)\asn1_DirectoryString.x \
$(OBJ)\asn1_Attribute.x \
$(OBJ)\asn1_AttributeTypeAndValue.x \
$(OBJ)\asn1_AuthorityInfoAccessSyntax.x \
$(OBJ)\asn1_AccessDescription.x \
$(OBJ)\asn1_RelativeDistinguishedName.x \
$(OBJ)\asn1_RDNSequence.x \
$(OBJ)\asn1_Name.x \
$(OBJ)\asn1_CertificateSerialNumber.x \
$(OBJ)\asn1_Time.x \
$(OBJ)\asn1_Validity.x \
$(OBJ)\asn1_UniqueIdentifier.x \
$(OBJ)\asn1_SubjectPublicKeyInfo.x \
$(OBJ)\asn1_Extension.x \
$(OBJ)\asn1_Extensions.x \
$(OBJ)\asn1_TBSCertificate.x \
$(OBJ)\asn1_Certificate.x \
$(OBJ)\asn1_Certificates.x \
$(OBJ)\asn1_ValidationParms.x \
$(OBJ)\asn1_DomainParameters.x \
$(OBJ)\asn1_DHPublicKey.x \
$(OBJ)\asn1_OtherName.x \
$(OBJ)\asn1_GeneralName.x \
$(OBJ)\asn1_GeneralNames.x \
$(OBJ)\asn1_id_x509_ce_keyUsage.x \
$(OBJ)\asn1_KeyUsage.x \
$(OBJ)\asn1_id_x509_ce_authorityKeyIdentifier.x \
$(OBJ)\asn1_KeyIdentifier.x \
$(OBJ)\asn1_AuthorityKeyIdentifier.x \
$(OBJ)\asn1_id_x509_ce_subjectKeyIdentifier.x \
$(OBJ)\asn1_SubjectKeyIdentifier.x \
$(OBJ)\asn1_id_x509_ce_basicConstraints.x \
$(OBJ)\asn1_BasicConstraints.x \
$(OBJ)\asn1_id_x509_ce_nameConstraints.x \
$(OBJ)\asn1_BaseDistance.x \
$(OBJ)\asn1_GeneralSubtree.x \
$(OBJ)\asn1_GeneralSubtrees.x \
$(OBJ)\asn1_NameConstraints.x \
$(OBJ)\asn1_id_x509_ce_privateKeyUsagePeriod.x \
$(OBJ)\asn1_id_x509_ce_certificatePolicies.x \
$(OBJ)\asn1_id_x509_ce_policyMappings.x \
$(OBJ)\asn1_id_x509_ce_subjectAltName.x \
$(OBJ)\asn1_id_x509_ce_issuerAltName.x \
$(OBJ)\asn1_id_x509_ce_subjectDirectoryAttributes.x \
$(OBJ)\asn1_id_x509_ce_policyConstraints.x \
$(OBJ)\asn1_id_x509_ce_extKeyUsage.x \
$(OBJ)\asn1_ExtKeyUsage.x \
$(OBJ)\asn1_id_x509_ce_cRLDistributionPoints.x \
$(OBJ)\asn1_id_x509_ce_deltaCRLIndicator.x \
$(OBJ)\asn1_id_x509_ce_issuingDistributionPoint.x \
$(OBJ)\asn1_id_x509_ce_holdInstructionCode.x \
$(OBJ)\asn1_id_x509_ce_invalidityDate.x \
$(OBJ)\asn1_id_x509_ce_certificateIssuer.x \
$(OBJ)\asn1_id_x509_ce_inhibitAnyPolicy.x \
$(OBJ)\asn1_DistributionPointReasonFlags.x \
$(OBJ)\asn1_DistributionPointName.x \
$(OBJ)\asn1_DistributionPoint.x \
$(OBJ)\asn1_CRLDistributionPoints.x \
$(OBJ)\asn1_DSASigValue.x \
$(OBJ)\asn1_DSAPublicKey.x \
$(OBJ)\asn1_DSAParams.x \
$(OBJ)\asn1_RSAPublicKey.x \
$(OBJ)\asn1_RSAPrivateKey.x \
$(OBJ)\asn1_DigestInfo.x \
$(OBJ)\asn1_TBSCRLCertList.x \
$(OBJ)\asn1_CRLCertificateList.x \
$(OBJ)\asn1_id_x509_ce_cRLNumber.x \
$(OBJ)\asn1_id_x509_ce_freshestCRL.x \
$(OBJ)\asn1_id_x509_ce_cRLReason.x \
$(OBJ)\asn1_CRLReason.x \
$(OBJ)\asn1_PKIXXmppAddr.x \
$(OBJ)\asn1_id_pkix.x \
$(OBJ)\asn1_id_pkix_on.x \
$(OBJ)\asn1_id_pkix_on_dnsSRV.x \
$(OBJ)\asn1_id_pkix_on_xmppAddr.x \
$(OBJ)\asn1_id_pkix_kp.x \
$(OBJ)\asn1_id_pkix_kp_serverAuth.x \
$(OBJ)\asn1_id_pkix_kp_clientAuth.x \
$(OBJ)\asn1_id_pkix_kp_emailProtection.x \
$(OBJ)\asn1_id_pkix_kp_timeStamping.x \
$(OBJ)\asn1_id_pkix_kp_OCSPSigning.x \
$(OBJ)\asn1_id_pkix_pe.x \
$(OBJ)\asn1_id_pkix_pe_authorityInfoAccess.x \
$(OBJ)\asn1_id_pkix_pe_proxyCertInfo.x \
$(OBJ)\asn1_id_pkix_ppl.x \
$(OBJ)\asn1_id_pkix_ppl_anyLanguage.x \
$(OBJ)\asn1_id_pkix_ppl_inheritAll.x \
$(OBJ)\asn1_id_pkix_ppl_independent.x \
$(OBJ)\asn1_ProxyPolicy.x \
$(OBJ)\asn1_ProxyCertInfo.x
gen_files_pkinit = \
$(OBJ)\asn1_id_pkinit.x \
$(OBJ)\asn1_id_pkauthdata.x \
$(OBJ)\asn1_id_pkdhkeydata.x \
$(OBJ)\asn1_id_pkrkeydata.x \
$(OBJ)\asn1_id_pkekuoid.x \
$(OBJ)\asn1_id_pkkdcekuoid.x \
$(OBJ)\asn1_id_pkinit_san.x \
$(OBJ)\asn1_id_pkinit_ms_eku.x \
$(OBJ)\asn1_id_pkinit_ms_san.x \
$(OBJ)\asn1_id_pkinit_kdf.x \
$(OBJ)\asn1_id_pkinit_kdf_ah_sha1.x \
$(OBJ)\asn1_id_pkinit_kdf_ah_sha256.x \
$(OBJ)\asn1_id_pkinit_kdf_ah_sha512.x \
$(OBJ)\asn1_MS_UPN_SAN.x \
$(OBJ)\asn1_DHNonce.x \
$(OBJ)\asn1_KDFAlgorithmId.x \
$(OBJ)\asn1_TrustedCA.x \
$(OBJ)\asn1_ExternalPrincipalIdentifier.x \
$(OBJ)\asn1_ExternalPrincipalIdentifiers.x \
$(OBJ)\asn1_PA_PK_AS_REQ.x \
$(OBJ)\asn1_PKAuthenticator.x \
$(OBJ)\asn1_AuthPack.x \
$(OBJ)\asn1_TD_TRUSTED_CERTIFIERS.x \
$(OBJ)\asn1_TD_INVALID_CERTIFICATES.x \
$(OBJ)\asn1_KRB5PrincipalName.x \
$(OBJ)\asn1_AD_INITIAL_VERIFIED_CAS.x \
$(OBJ)\asn1_DHRepInfo.x \
$(OBJ)\asn1_PA_PK_AS_REP.x \
$(OBJ)\asn1_KDCDHKeyInfo.x \
$(OBJ)\asn1_ReplyKeyPack.x \
$(OBJ)\asn1_TD_DH_PARAMETERS.x \
$(OBJ)\asn1_PKAuthenticator_Win2k.x \
$(OBJ)\asn1_AuthPack_Win2k.x \
$(OBJ)\asn1_TrustedCA_Win2k.x \
$(OBJ)\asn1_PA_PK_AS_REQ_Win2k.x \
$(OBJ)\asn1_PA_PK_AS_REP_Win2k.x \
$(OBJ)\asn1_KDCDHKeyInfo_Win2k.x \
$(OBJ)\asn1_ReplyKeyPack_Win2k.x \
$(OBJ)\asn1_PkinitSP80056AOtherInfo.x \
$(OBJ)\asn1_PkinitSuppPubInfo.x
gen_files_pkcs12 = \
$(OBJ)\asn1_id_pkcs_12.x \
$(OBJ)\asn1_id_pkcs_12PbeIds.x \
$(OBJ)\asn1_id_pbeWithSHAAnd128BitRC4.x \
$(OBJ)\asn1_id_pbeWithSHAAnd40BitRC4.x \
$(OBJ)\asn1_id_pbeWithSHAAnd3_KeyTripleDES_CBC.x \
$(OBJ)\asn1_id_pbeWithSHAAnd2_KeyTripleDES_CBC.x \
$(OBJ)\asn1_id_pbeWithSHAAnd128BitRC2_CBC.x \
$(OBJ)\asn1_id_pbewithSHAAnd40BitRC2_CBC.x \
$(OBJ)\asn1_id_pkcs12_bagtypes.x \
$(OBJ)\asn1_id_pkcs12_keyBag.x \
$(OBJ)\asn1_id_pkcs12_pkcs8ShroudedKeyBag.x \
$(OBJ)\asn1_id_pkcs12_certBag.x \
$(OBJ)\asn1_id_pkcs12_crlBag.x \
$(OBJ)\asn1_id_pkcs12_secretBag.x \
$(OBJ)\asn1_id_pkcs12_safeContentsBag.x \
$(OBJ)\asn1_PKCS12_MacData.x \
$(OBJ)\asn1_PKCS12_PFX.x \
$(OBJ)\asn1_PKCS12_AuthenticatedSafe.x \
$(OBJ)\asn1_PKCS12_CertBag.x \
$(OBJ)\asn1_PKCS12_Attribute.x \
$(OBJ)\asn1_PKCS12_Attributes.x \
$(OBJ)\asn1_PKCS12_SafeBag.x \
$(OBJ)\asn1_PKCS12_SafeContents.x \
$(OBJ)\asn1_PKCS12_OctetString.x \
$(OBJ)\asn1_PKCS12_PBEParams.x
gen_files_pkcs8 = \
$(OBJ)\asn1_PKCS8PrivateKeyAlgorithmIdentifier.x \
$(OBJ)\asn1_PKCS8PrivateKey.x \
$(OBJ)\asn1_PKCS8PrivateKeyInfo.x \
$(OBJ)\asn1_PKCS8Attributes.x \
$(OBJ)\asn1_PKCS8EncryptedPrivateKeyInfo.x \
$(OBJ)\asn1_PKCS8EncryptedData.x
gen_files_pkcs9 = \
$(OBJ)\asn1_id_pkcs_9.x \
$(OBJ)\asn1_id_pkcs9_contentType.x \
$(OBJ)\asn1_id_pkcs9_emailAddress.x \
$(OBJ)\asn1_id_pkcs9_messageDigest.x \
$(OBJ)\asn1_id_pkcs9_signingTime.x \
$(OBJ)\asn1_id_pkcs9_countersignature.x \
$(OBJ)\asn1_id_pkcs_9_at_friendlyName.x \
$(OBJ)\asn1_id_pkcs_9_at_localKeyId.x \
$(OBJ)\asn1_id_pkcs_9_at_certTypes.x \
$(OBJ)\asn1_id_pkcs_9_at_certTypes_x509.x \
$(OBJ)\asn1_PKCS9_BMPString.x \
$(OBJ)\asn1_PKCS9_friendlyName.x
gen_files_test = \
$(OBJ)\asn1_TESTAlloc.x \
$(OBJ)\asn1_TESTAllocInner.x \
$(OBJ)\asn1_TESTCONTAINING.x \
$(OBJ)\asn1_TESTCONTAININGENCODEDBY.x \
$(OBJ)\asn1_TESTCONTAININGENCODEDBY2.x \
$(OBJ)\asn1_TESTChoice1.x \
$(OBJ)\asn1_TESTChoice2.x \
$(OBJ)\asn1_TESTDer.x \
$(OBJ)\asn1_TESTENCODEDBY.x \
$(OBJ)\asn1_TESTImplicit.x \
$(OBJ)\asn1_TESTImplicit2.x \
$(OBJ)\asn1_TESTInteger.x \
$(OBJ)\asn1_TESTInteger2.x \
$(OBJ)\asn1_TESTInteger3.x \
$(OBJ)\asn1_TESTLargeTag.x \
$(OBJ)\asn1_TESTSeq.x \
$(OBJ)\asn1_TESTUSERCONSTRAINED.x \
$(OBJ)\asn1_TESTSeqOf.x \
$(OBJ)\asn1_TESTOSSize1.x \
$(OBJ)\asn1_TESTSeqSizeOf1.x \
$(OBJ)\asn1_TESTSeqSizeOf2.x \
$(OBJ)\asn1_TESTSeqSizeOf3.x \
$(OBJ)\asn1_TESTSeqSizeOf4.x
gen_files_digest = \
$(OBJ)\asn1_DigestError.x \
$(OBJ)\asn1_DigestInit.x \
$(OBJ)\asn1_DigestInitReply.x \
$(OBJ)\asn1_DigestREP.x \
$(OBJ)\asn1_DigestREQ.x \
$(OBJ)\asn1_DigestRepInner.x \
$(OBJ)\asn1_DigestReqInner.x \
$(OBJ)\asn1_DigestRequest.x \
$(OBJ)\asn1_DigestResponse.x \
$(OBJ)\asn1_DigestTypes.x \
$(OBJ)\asn1_NTLMInit.x \
$(OBJ)\asn1_NTLMInitReply.x \
$(OBJ)\asn1_NTLMRequest.x \
$(OBJ)\asn1_NTLMResponse.x
gen_files_kx509 = \
$(OBJ)\asn1_Kx509Response.x \
$(OBJ)\asn1_Kx509Request.x
asn1_binaries = \
$(BINDIR)\asn1_compile.exe \
$(BINDIR)\asn1_print.exe \
$(BINDIR)\asn1_gen.exe
$(BINDIR)\asn1_compile.exe: \
$(OBJ)\gen.obj \
$(OBJ)\gen_copy.obj \
$(OBJ)\gen_decode.obj \
$(OBJ)\gen_encode.obj \
$(OBJ)\gen_free.obj \
$(OBJ)\gen_glue.obj \
$(OBJ)\gen_length.obj \
$(OBJ)\gen_seq.obj \
$(OBJ)\hash.obj \
$(OBJ)\lex.obj \
$(OBJ)\main.obj \
$(OBJ)\parse.obj \
$(OBJ)\symbol.obj
$(EXECONLINK) $(LIBROKEN) $(LIBVERS)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
$(OBJ)\lex.c: lex.l $(OBJ)\parse.h
$(LEX) -o$@ lex.l
$(OBJ)\parse.c $(OBJ)\parse.h: parse.y
$(YACC) -o $(OBJ)\parse.c --defines=$(OBJ)\parse.h $**
$(OBJ)\asn1_err.c $(OBJ)\asn1_err.h: asn1_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\asn1_err.et
cd $(SRCDIR)
$(BINDIR)\asn1_print.exe: $(OBJ)\asn1_print.obj $(LIBASN1)
$(EXECONLINK) $(LIBVERS) $(LIBROKEN) $(LIBCOMERR)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
$(BINDIR)\asn1_gen.exe: $(OBJ)\asn1_gen.obj $(LIBASN1)
$(EXECONLINK) $(LIBVERS) $(LIBROKEN)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
$(LIBASN1): \
$(OBJ)\der.obj \
$(OBJ)\der_get.obj \
$(OBJ)\der_put.obj \
$(OBJ)\der_free.obj \
$(OBJ)\der_length.obj \
$(OBJ)\der_copy.obj \
$(OBJ)\der_cmp.obj \
$(OBJ)\der_format.obj \
$(OBJ)\extra.obj \
$(OBJ)\timegm.obj \
$(gen_files_rfc2459:.x=.obj) \
$(gen_files_cms:.x=.obj) \
$(gen_files_k5:.x=.obj) \
$(gen_files_pkinit:.x=.obj) \
$(gen_files_pkcs8:.x=.obj) \
$(gen_files_pkcs9:.x=.obj) \
$(gen_files_pkcs12:.x=.obj) \
$(gen_files_digest:.x=.obj) \
$(gen_files_kx509:.x=.obj) \
$(OBJ)\asn1_err.obj
$(LIBCON_C) /OUT:$@ @<<
$(**: =
)
<<
clean::
-$(RM) $(LIBASN1)
$(gen_files_k5:.x=.c) : $$(@R).x
$(gen_files_pkinit:.x=.c) : $$(@R).x
$(gen_files_pkcs8:.x=.c) : $$(@R).x
$(gen_files_pkcs9:.x=.c) : $$(@R).x
$(gen_files_pkcs12:.x=.c) : $$(@R).x
$(gen_files_digest:.x=.c) : $$(@R).x
$(gen_files_kx509:.x=.c) : $$(@R).x
$(gen_files_rfc2459:.x=.c) : $$(@R).x
$(gen_files_cms:.x=.c) : $$(@R).x
$(gen_files_test:.x=.c) : $$(@R).x
$(gen_files_k5) $(OBJ)\krb5_asn1.h: $(BINDIR)\asn1_compile.exe k5.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe \
--encode-rfc1510-bit-string \
--sequence=KRB5SignedPathPrincipals \
--sequence=AuthorizationData \
--sequence=METHOD-DATA \
--sequence=ETYPE-INFO \
--sequence=ETYPE-INFO2 \
$(SRCDIR)\k5.asn1 krb5_asn1 \
|| ($(RM) $(OBJ)\krb5_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_pkinit) $(OBJ)\pkinit_asn1.h: $(BINDIR)\asn1_compile.exe pkinit.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\pkinit.asn1 pkinit_asn1 \
|| ($(RM) $(OBJ)\pkinit_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_pkcs8) $(OBJ)\pkcs8_asn1.h: $(BINDIR)\asn1_compile.exe pkcs8.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\pkcs8.asn1 pkcs8_asn1 \
|| ($(RM) $(OBJ)\pkcs8_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_pkcs9) $(OBJ)\pkcs9_asn1.h: $(BINDIR)\asn1_compile.exe pkcs9.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\pkcs9.asn1 pkcs9_asn1 \
|| ($(RM) $(OBJ)\pkcs9_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_pkcs12) $(OBJ)\pkcs12_asn1.h: $(BINDIR)\asn1_compile.exe pkcs12.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\pkcs12.asn1 pkcs12_asn1 \
|| ($(RM) $(OBJ)\pkcs12_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_digest) $(OBJ)\digest_asn1.h: $(BINDIR)\asn1_compile.exe digest.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\digest.asn1 digest_asn1 \
|| ($(RM) $(OBJ)\digest_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_kx509) $(OBJ)\kx509_asn1.h: $(BINDIR)\asn1_compile.exe kx509.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\kx509.asn1 kx509_asn1 \
|| ($(RM) $(OBJ)\kx509_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_rfc2459) $(OBJ)\rfc2459_asn1.h: $(BINDIR)\asn1_compile.exe rfc2459.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe \
--preserve-binary=TBSCertificate \
--preserve-binary=TBSCRLCertList \
--preserve-binary=Name \
--sequence=GeneralNames \
--sequence=Extensions \
--sequence=CRLDistributionPoints \
$(SRCDIR)\rfc2459.asn1 rfc2459_asn1 \
|| ($(RM) $(OBJ)\krb5_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_cms) $(OBJ)\cms_asn1.h: $(BINDIR)\asn1_compile.exe cms.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\CMS.asn1 cms_asn1 \
|| ($(RM) $(OBJ)\cms_asn1.h ; exit /b 1)
cd $(SRCDIR)
$(gen_files_test) $(OBJ)\test_asn1.h: $(BINDIR)\asn1_compile.exe test.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe \
--sequence=TESTSeqOf \
$(SRCDIR)\test.asn1 test_asn1 \
|| ($(RM) $(OBJ)\test_asn1.h ; exit /b 1)
cd $(SRCDIR)
INCFILES=$(INCDIR)\der.h $(INCDIR)\heim_asn1.h $(INCDIR)\der-protos.h \
$(OBJ)\asn1_err.h
$(INCDIR)\der-protos.h: $(OBJ)\der-protos.h
GENINCFILES= \
$(INCDIR)\asn1_err.h \
$(INCDIR)\cms_asn1.h \
$(INCDIR)\digest_asn1.h \
$(INCDIR)\krb5_asn1.h \
$(INCDIR)\kx509_asn1.h \
$(INCDIR)\pkcs12_asn1.h \
$(INCDIR)\pkcs8_asn1.h \
$(INCDIR)\pkcs9_asn1.h \
$(INCDIR)\pkinit_asn1.h \
$(INCDIR)\rfc2459_asn1.h
libasn1_SOURCES= \
der-protos.h \
der_locl.h \
der.c \
der.h \
der_get.c \
der_put.c \
der_free.c \
der_length.c \
der_copy.c \
der_cmp.c \
der_format.c \
heim_asn1.h \
extra.c \
timegm.c
$(OBJ)\der-protos.h: $(libasn1_SOURCES:der-protos.h=)
$(PERL) ..\..\cf\make-proto.pl -q -P remove -o $(OBJ)\der-protos.h $(libasn1_SOURCES) || $(RM) $(OBJ)\der-protos.h
clean::
-$(RM) $(INCDIR)\der-protos.h
all:: $(INCFILES) $(GENINCFILES) $(LIBASN1) $(asn1_binaries)
TEST_BINARIES=\
$(OBJ)\check-der.exe \
$(OBJ)\check-gen.exe \
$(OBJ)\check-timegm.exe
test-binaries: $(TEST_BINARIES)
test-run:
test:: test-binaries test-run
{$(OBJ)}.c{$(OBJ)}.obj:
$(C2OBJ) -I$(SRCDIR) -I$(OBJ)
{}.c{$(OBJ)}.obj:
$(C2OBJ) -I$(SRCDIR) -I$(OBJ)

View File

@@ -2,6 +2,9 @@
#include <stddef.h>
#include <time.h>
#ifndef HAVE_INT32_T
#include <krb5-types.h>
#endif
#ifndef __asn1_common_definitions__
#define __asn1_common_definitions__

35
lib/auth/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\auth
!include ../../windows/NTMakefile.w32

View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\auth\afskauthlib
!include ../../../windows/NTMakefile.w32

35
lib/auth/pam/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\auth\pam
!include ../../../windows/NTMakefile.w32

35
lib/auth/sia/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\auth\sia
!include ../../../windows/NTMakefile.w32

88
lib/com_err/NTMakefile Normal file
View File

@@ -0,0 +1,88 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR = lib\com_err
!include ../../windows/NTMakefile.w32
INCFILES=$(INCDIR)\com_err.h $(INCDIR)\com_right.h
libcomerr_OBJs=$(OBJ)\error.obj $(OBJ)\com_err.obj
COMERRDLL=$(BINDIR)\com_err.dll
!ifdef STATICLIBS
$(LIBCOMERR): $(libcomerr_OBJs)
$(LIBCON)
!else
$(LIBCOMERR): $(COMERRDLL)
$(COMERRDLL): $(libcomerr_OBJs) $(OBJ)\libcom_err-version.res
$(DLLGUILINK_C) -OUT:$(COMERRDLL) -IMPLIB:$(LIBCOMERR) $** \
$(LIBROKEN) \
-DEF:libcom_err-exports.def
$(_VC_MANIFEST_EMBED_DLL)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
!endif
$(BINDIR)\compile_et.exe: $(OBJ)\parse.obj $(OBJ)\lex.obj $(OBJ)\compile_et.obj
$(EXECONLINK) $(LIBROKEN) $(LIBVERS)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
$(OBJ)\parse.obj: $(OBJ)\parse.c
$(C2OBJ) -I$(SRC)\$(RELDIR)
$(OBJ)\lex.obj: $(OBJ)\lex.c
$(C2OBJ) -I$(SRC)\$(RELDIR)
$(OBJ)\compile_et.obj: compile_et.c
$(C2OBJ) -I$(OBJ)
$(OBJ)\parse.c: parse.y
$(YACC) -o $@ --defines=$(OBJ)\parse.h parse.y
$(OBJ)\lex.c: lex.l
$(LEX) -o$@ lex.l
all:: $(INCFILES) $(LIBCOMERR) $(BINDIR)\compile_et.exe
clean::
-$(RM) $(LIBCOMERR)
-$(RM) $(INCFILES)
-$(RM) $(COMERRDLL)

View File

@@ -220,6 +220,10 @@ main(int argc, char **argv)
p = strrchr(filename, '/');
#ifdef BACKSLASH_PATH_DELIM
if (!p)
p = strrchr(filename, '\\');
#endif
if(p)
p++;
else

View File

@@ -0,0 +1,12 @@
EXPORTS
com_right
free_error_table
initialize_error_table_r
add_to_error_table
com_err
com_err_va
error_message
error_table_name
init_error_table
reset_com_err_hook
set_com_err_hook

View File

@@ -0,0 +1,36 @@
/***********************************************************************
* Copyright (c) 2009, Secure Endpoints Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
**********************************************************************/
#define RC_FILE_TYPE VFT_DLL
#define RC_FILE_COMMENT_0409 "Some comment"
#define RC_FILE_ORIG_0409 "com_err.dll"
#include "../../windows/version.rc"

62
lib/editline/NTMakefile Normal file
View File

@@ -0,0 +1,62 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR = lib\editline
!include ../../windows/NTMakefile.w32
libeditline_la_OBJS = \
$(OBJ)\complete.obj \
$(OBJ)\editline.obj \
$(OBJ)\syswin.obj
$(LIBDIR)\libeditline.lib: $(libeditline_la_OBJS)
$(LIBCON)
$(OBJ)\testit.exe: $(OBJ)\testit.obj $(LIBEDITLINE) $(LIBROKEN) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
all:: $(LIBEDITLINE)
clean::
-$(RM) $(LIBEDITLINE)
test-binaries: $(OBJ)\testit.exe
run-test:
cd $(OBJ)
testit.exe
cd $(SRC)\lib\editline
test:: test-binaries run-test

View File

@@ -33,7 +33,9 @@ typedef struct direct DIRENTRY;
#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
#endif /* !defined(S_ISDIR) */
#ifndef HAVE_CHAR
typedef unsigned char CHAR;
#endif
#define MEM_INC 64
#define SCREEN_INC 256

View File

@@ -455,7 +455,7 @@ ceol(void)
static void
clear_line(void)
{
Point = -strlen(Prompt);
Point = -(int)strlen(Prompt);
TTYput('\r');
ceol();
Point = 0;

47
lib/editline/syswin.c Normal file
View File

@@ -0,0 +1,47 @@
/***********************************************************************
* Copyright (c) 2009, Secure Endpoints Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
**********************************************************************/
#include <config.h>
#include "edit_locl.h"
void
rl_ttyset(int Reset)
{
}
void
rl_add_slash(char *path, char *p, size_t len)
{
struct stat Sb;
if (stat(path, &Sb) >= 0)
strlcat(p, S_ISDIR(Sb.st_mode) ? "\\" : " ", len);
}

499
lib/gssapi/NTMakefile Normal file
View File

@@ -0,0 +1,499 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\gssapi
!include ../../windows/NTMakefile.w32
krb5src = \
krb5/8003.c \
krb5/accept_sec_context.c \
krb5/acquire_cred.c \
krb5/add_cred.c \
krb5/address_to_krb5addr.c \
krb5/arcfour.c \
krb5/canonicalize_name.c \
krb5/ccache_name.c \
krb5/cfx.c \
krb5/cfx.h \
krb5/compare_name.c \
krb5/compat.c \
krb5/context_time.c \
krb5/copy_ccache.c \
krb5/decapsulate.c \
krb5/delete_sec_context.c \
krb5/display_name.c \
krb5/display_status.c \
krb5/duplicate_name.c \
krb5/encapsulate.c \
krb5/export_name.c \
krb5/export_sec_context.c \
krb5/external.c \
krb5/get_mic.c \
krb5/gsskrb5_locl.h \
krb5/import_name.c \
krb5/import_sec_context.c \
krb5/indicate_mechs.c \
krb5/init.c \
krb5/init_sec_context.c \
krb5/inquire_context.c \
krb5/inquire_cred.c \
krb5/inquire_cred_by_mech.c \
krb5/inquire_cred_by_oid.c \
krb5/inquire_mechs_for_name.c \
krb5/inquire_names_for_mech.c \
krb5/inquire_sec_context_by_oid.c \
krb5/process_context_token.c \
krb5/prf.c \
krb5/release_buffer.c \
krb5/release_cred.c \
krb5/release_name.c \
krb5/sequence.c \
krb5/set_cred_option.c \
krb5/set_sec_context_option.c \
krb5/ticket_flags.c \
krb5/unwrap.c \
krb5/v1.c \
krb5/verify_mic.c \
krb5/wrap.c
mechsrc = \
mech/context.h \
mech/context.c \
mech/cred.h \
mech/gss_accept_sec_context.c \
mech/gss_acquire_cred.c \
mech/gss_add_cred.c \
mech/gss_add_oid_set_member.c \
mech/gss_buffer_set.c \
mech/gss_canonicalize_name.c \
mech/gss_compare_name.c \
mech/gss_context_time.c \
mech/gss_create_empty_oid_set.c \
mech/gss_decapsulate_token.c \
mech/gss_delete_sec_context.c \
mech/gss_display_name.c \
mech/gss_display_status.c \
mech/gss_duplicate_name.c \
mech/gss_duplicate_oid.c \
mech/gss_encapsulate_token.c \
mech/gss_export_name.c \
mech/gss_export_sec_context.c \
mech/gss_get_mic.c \
mech/gss_import_name.c \
mech/gss_import_sec_context.c \
mech/gss_indicate_mechs.c \
mech/gss_init_sec_context.c \
mech/gss_inquire_context.c \
mech/gss_inquire_cred.c \
mech/gss_inquire_cred_by_mech.c \
mech/gss_inquire_cred_by_oid.c \
mech/gss_inquire_mechs_for_name.c \
mech/gss_inquire_names_for_mech.c \
mech/gss_krb5.c \
mech/gss_mech_switch.c \
mech/gss_names.c \
mech/gss_oid_equal.c \
mech/gss_oid_to_str.c \
mech/gss_process_context_token.c \
mech/gss_pseudo_random.c \
mech/gss_release_buffer.c \
mech/gss_release_cred.c \
mech/gss_release_name.c \
mech/gss_release_oid.c \
mech/gss_release_oid_set.c \
mech/gss_seal.c \
mech/gss_set_cred_option.c \
mech/gss_set_sec_context_option.c \
mech/gss_sign.c \
mech/gss_test_oid_set_member.c \
mech/gss_unseal.c \
mech/gss_unwrap.c \
mech/gss_utils.c \
mech/gss_verify.c \
mech/gss_verify_mic.c \
mech/gss_wrap.c \
mech/gss_wrap_size_limit.c \
mech/gss_inquire_sec_context_by_oid.c \
mech/mech_switch.h \
mech/mechqueue.h \
mech/mech_locl.h \
mech/name.h \
mech/utils.h
spnegosrc = \
spnego/accept_sec_context.c \
spnego/compat.c \
spnego/context_stubs.c \
spnego/cred_stubs.c \
spnego/external.c \
spnego/init_sec_context.c \
spnego/spnego_locl.h
ntlmsrc = \
ntlm/accept_sec_context.c \
ntlm/acquire_cred.c \
ntlm/add_cred.c \
ntlm/canonicalize_name.c \
ntlm/compare_name.c \
ntlm/context_time.c \
ntlm/crypto.c \
ntlm/delete_sec_context.c \
ntlm/display_name.c \
ntlm/display_status.c \
ntlm/duplicate_name.c \
ntlm/export_name.c \
ntlm/export_sec_context.c \
ntlm/external.c \
ntlm/ntlm.h \
ntlm/import_name.c \
ntlm/import_sec_context.c \
ntlm/indicate_mechs.c \
ntlm/init_sec_context.c \
ntlm/inquire_context.c \
ntlm/inquire_cred.c \
ntlm/inquire_cred_by_mech.c \
ntlm/inquire_mechs_for_name.c \
ntlm/inquire_names_for_mech.c \
ntlm/process_context_token.c \
ntlm/release_cred.c \
ntlm/release_name.c \
ntlm/digest.c
$(OBJ)\ntlm\ntlm-private.h: $(ntlmsrc)
$(PERL) ../../cf/make-proto.pl -q -P remove -p $@ $(ntlmsrc)
$(OBJ)\krb5\gsskrb5-private.h: $(krb5src)
$(PERL) ../../cf/make-proto.pl -q -P remove -p $@ $(krb5src)
$(OBJ)\spnego\spnego-private.h: $(spnegosrc)
$(PERL) ../../cf/make-proto.pl -q -P remove -p $@ $(spnegosrc)
gssapi_files = \
$(OBJ)\gssapi\asn1_GSSAPIContextToken.x
spnego_files = \
$(OBJ)\spnego\asn1_ContextFlags.x \
$(OBJ)\spnego\asn1_MechType.x \
$(OBJ)\spnego\asn1_MechTypeList.x \
$(OBJ)\spnego\asn1_NegotiationToken.x \
$(OBJ)\spnego\asn1_NegotiationTokenWin.x \
$(OBJ)\spnego\asn1_NegHints.x \
$(OBJ)\spnego\asn1_NegTokenInit.x \
$(OBJ)\spnego\asn1_NegTokenInitWin.x \
$(OBJ)\spnego\asn1_NegTokenResp.x
$(gssapi_files:.x=.c): $$(@R).x
$(spnego_files:.x=.c): $$(@R).x
$(gssapi_files) $(OBJ)\gssapi\gssapi_asn1.h: $(BINDIR)\asn1_compile.exe mech\gssapi.asn1
cd $(OBJ)\gssapi
$(BINDIR)\asn1_compile.exe $(SRCDIR)\mech\gssapi.asn1 gssapi_asn1 \
|| ( $(RM) $(OBJ)\gssapi\gssapi_asn1.h ; exit /b 1 )
cd $(SRCDIR)
$(spnego_files) $(OBJ)\spnego\spnego_asn1.h: $(BINDIR)\asn1_compile.exe spnego\spnego.asn1
cd $(OBJ)\spnego
$(BINDIR)\asn1_compile --sequence=MechTypeList $(SRCDIR)\spnego\spnego.asn1 spnego_asn1 \
|| ( $(RM) $(OBJ)\spnego\spnego_asn1.h ; exit /b 1 )
cd $(SRCDIR)
$(OBJ)\gkrb5_err.c $(OBJ)\gkrb5_err.h: krb5\gkrb5_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\krb5\gkrb5_err.et
cd $(SRCDIR)
INCFILES= \
$(INCDIR)\gssapi.h \
$(OBJ)\ntlm\ntlm-private.h \
$(OBJ)\spnego\spnego-private.h \
$(OBJ)\krb5\gsskrb5-private.h \
$(OBJ)\gkrb5_err.h \
$(OBJ)\gssapi\gssapi_asn1.h \
$(OBJ)\spnego\spnego_asn1.h
all:: $(INCFILES)
libgssapi_OBJs= \
$(OBJ)\krb5\8003.obj \
$(OBJ)\krb5\accept_sec_context.obj \
$(OBJ)\krb5\acquire_cred.obj \
$(OBJ)\krb5\add_cred.obj \
$(OBJ)\krb5\address_to_krb5addr.obj \
$(OBJ)\krb5\arcfour.obj \
$(OBJ)\krb5\canonicalize_name.obj \
$(OBJ)\krb5\ccache_name.obj \
$(OBJ)\krb5\cfx.obj \
$(OBJ)\krb5\compare_name.obj \
$(OBJ)\krb5\compat.obj \
$(OBJ)\krb5\context_time.obj \
$(OBJ)\krb5\copy_ccache.obj \
$(OBJ)\krb5\decapsulate.obj \
$(OBJ)\krb5\delete_sec_context.obj \
$(OBJ)\krb5\display_name.obj \
$(OBJ)\krb5\display_status.obj \
$(OBJ)\krb5\duplicate_name.obj \
$(OBJ)\krb5\encapsulate.obj \
$(OBJ)\krb5\export_name.obj \
$(OBJ)\krb5\export_sec_context.obj \
$(OBJ)\krb5\external.obj \
$(OBJ)\krb5\get_mic.obj \
$(OBJ)\krb5\import_name.obj \
$(OBJ)\krb5\import_sec_context.obj \
$(OBJ)\krb5\indicate_mechs.obj \
$(OBJ)\krb5\init.obj \
$(OBJ)\krb5\init_sec_context.obj \
$(OBJ)\krb5\inquire_context.obj \
$(OBJ)\krb5\inquire_cred.obj \
$(OBJ)\krb5\inquire_cred_by_mech.obj \
$(OBJ)\krb5\inquire_cred_by_oid.obj \
$(OBJ)\krb5\inquire_mechs_for_name.obj \
$(OBJ)\krb5\inquire_names_for_mech.obj \
$(OBJ)\krb5\inquire_sec_context_by_oid.obj \
$(OBJ)\krb5\process_context_token.obj \
$(OBJ)\krb5\prf.obj \
$(OBJ)\krb5\release_buffer.obj \
$(OBJ)\krb5\release_cred.obj \
$(OBJ)\krb5\release_name.obj \
$(OBJ)\krb5\sequence.obj \
$(OBJ)\krb5\set_cred_option.obj \
$(OBJ)\krb5\set_sec_context_option.obj \
$(OBJ)\krb5\ticket_flags.obj \
$(OBJ)\krb5\unwrap.obj \
$(OBJ)\krb5\v1.obj \
$(OBJ)\krb5\verify_mic.obj \
$(OBJ)\krb5\wrap.obj \
$(OBJ)\mech\context.obj \
$(OBJ)\mech\gss_accept_sec_context.obj \
$(OBJ)\mech\gss_acquire_cred.obj \
$(OBJ)\mech\gss_add_cred.obj \
$(OBJ)\mech\gss_add_oid_set_member.obj \
$(OBJ)\mech\gss_buffer_set.obj \
$(OBJ)\mech\gss_canonicalize_name.obj \
$(OBJ)\mech\gss_compare_name.obj \
$(OBJ)\mech\gss_context_time.obj \
$(OBJ)\mech\gss_create_empty_oid_set.obj \
$(OBJ)\mech\gss_decapsulate_token.obj \
$(OBJ)\mech\gss_delete_sec_context.obj \
$(OBJ)\mech\gss_display_name.obj \
$(OBJ)\mech\gss_display_status.obj \
$(OBJ)\mech\gss_duplicate_name.obj \
$(OBJ)\mech\gss_duplicate_oid.obj \
$(OBJ)\mech\gss_encapsulate_token.obj \
$(OBJ)\mech\gss_export_name.obj \
$(OBJ)\mech\gss_export_sec_context.obj \
$(OBJ)\mech\gss_get_mic.obj \
$(OBJ)\mech\gss_import_name.obj \
$(OBJ)\mech\gss_import_sec_context.obj \
$(OBJ)\mech\gss_indicate_mechs.obj \
$(OBJ)\mech\gss_init_sec_context.obj \
$(OBJ)\mech\gss_inquire_context.obj \
$(OBJ)\mech\gss_inquire_cred.obj \
$(OBJ)\mech\gss_inquire_cred_by_mech.obj \
$(OBJ)\mech\gss_inquire_cred_by_oid.obj \
$(OBJ)\mech\gss_inquire_mechs_for_name.obj \
$(OBJ)\mech\gss_inquire_names_for_mech.obj \
$(OBJ)\mech\gss_krb5.obj \
$(OBJ)\mech\gss_mech_switch.obj \
$(OBJ)\mech\gss_names.obj \
$(OBJ)\mech\gss_oid_equal.obj \
$(OBJ)\mech\gss_oid_to_str.obj \
$(OBJ)\mech\gss_process_context_token.obj \
$(OBJ)\mech\gss_pseudo_random.obj \
$(OBJ)\mech\gss_release_buffer.obj \
$(OBJ)\mech\gss_release_cred.obj \
$(OBJ)\mech\gss_release_name.obj \
$(OBJ)\mech\gss_release_oid.obj \
$(OBJ)\mech\gss_release_oid_set.obj \
$(OBJ)\mech\gss_seal.obj \
$(OBJ)\mech\gss_set_cred_option.obj \
$(OBJ)\mech\gss_set_sec_context_option.obj \
$(OBJ)\mech\gss_sign.obj \
$(OBJ)\mech\gss_test_oid_set_member.obj \
$(OBJ)\mech\gss_unseal.obj \
$(OBJ)\mech\gss_unwrap.obj \
$(OBJ)\mech\gss_utils.obj \
$(OBJ)\mech\gss_verify.obj \
$(OBJ)\mech\gss_verify_mic.obj \
$(OBJ)\mech\gss_wrap.obj \
$(OBJ)\mech\gss_wrap_size_limit.obj \
$(OBJ)\mech\gss_inquire_sec_context_by_oid.obj \
$(OBJ)\ntlm\accept_sec_context.obj \
$(OBJ)\ntlm\acquire_cred.obj \
$(OBJ)\ntlm\add_cred.obj \
$(OBJ)\ntlm\canonicalize_name.obj \
$(OBJ)\ntlm\compare_name.obj \
$(OBJ)\ntlm\context_time.obj \
$(OBJ)\ntlm\crypto.obj \
$(OBJ)\ntlm\delete_sec_context.obj \
$(OBJ)\ntlm\display_name.obj \
$(OBJ)\ntlm\display_status.obj \
$(OBJ)\ntlm\duplicate_name.obj \
$(OBJ)\ntlm\export_name.obj \
$(OBJ)\ntlm\export_sec_context.obj \
$(OBJ)\ntlm\external.obj \
$(OBJ)\ntlm\import_name.obj \
$(OBJ)\ntlm\import_sec_context.obj \
$(OBJ)\ntlm\indicate_mechs.obj \
$(OBJ)\ntlm\init_sec_context.obj \
$(OBJ)\ntlm\inquire_context.obj \
$(OBJ)\ntlm\inquire_cred.obj \
$(OBJ)\ntlm\inquire_cred_by_mech.obj \
$(OBJ)\ntlm\inquire_mechs_for_name.obj \
$(OBJ)\ntlm\inquire_names_for_mech.obj \
$(OBJ)\ntlm\process_context_token.obj \
$(OBJ)\ntlm\release_cred.obj \
$(OBJ)\ntlm\release_name.obj \
$(OBJ)\ntlm\digest.obj \
$(OBJ)\spnego\accept_sec_context.obj \
$(OBJ)\spnego\compat.obj \
$(OBJ)\spnego\context_stubs.obj \
$(OBJ)\spnego\cred_stubs.obj \
$(OBJ)\spnego\external.obj \
$(OBJ)\spnego\init_sec_context.obj \
$(OBJ)\gkrb5_err.obj \
$(spnego_files:.x=.obj) \
$(gssapi_files:.x=.obj)
GCOPTS=-I$(SRCDIR) -I$(OBJ) -DBUILD_GSSAPI_LIB
{$(OBJ)\krb5}.c{$(OBJ)\krb5}.obj:
$(C2OBJ) -I$(OBJ)\krb5 $(GCOPTS)
{krb5}.c{$(OBJ)\krb5}.obj:
$(C2OBJ) -I$(OBJ)\krb5 $(GCOPTS)
{$(OBJ)\mech}.c{$(OBJ)\mech}.obj:
$(C2OBJ) -I$(OBJ)\mech $(GCOPTS)
{mech}.c{$(OBJ)\mech}.obj:
$(C2OBJ) -I$(OBJ)\mech -I$(OBJ)\gssapi $(GCOPTS)
{$(OBJ)\ntlm}.c{$(OBJ)\ntlm}.obj:
$(C2OBJ) -I$(OBJ)\ntlm $(GCOPTS)
{ntlm}.c{$(OBJ)\ntlm}.obj:
$(C2OBJ) -I$(OBJ)\ntlm $(GCOPTS)
{$(OBJ)\spnego}.c{$(OBJ)\spnego}.obj:
$(C2OBJ) -I$(OBJ)\spnego $(GCOPTS)
{spnego}.c{$(OBJ)\spnego}.obj:
$(C2OBJ) -I$(OBJ)\spnego $(GCOPTS)
{$(OBJ)\gssapi}.c{$(OBJ)\gssapi}.obj:
$(C2OBJ) -I$(OBJ)\gssapi $(GCOPTS)
{}.c{$(OBJ)}.obj:
$(C2OBJ) $(GCOPTS)
{$(OBJ)}.c{$(OBJ)}.obj:
$(C2OBJ) $(GCOPTS)
{$(OBJ)\spnego}.x{$(OBJ)\spnego}.c:
$(CP) $** $@
{$(OBJ)\gssapi}.x{$(OBJ)\gssapi}.c:
$(CP) $** $@
LIBGSSAPI_LIBS=\
$(LIBROKEN) \
$(LIBASN1) \
$(LIBKRB5) \
$(LIBHCRYPTO) \
$(LIBHEIMNTLM) \
$(LIBCOMERR)
LIBGSSAPI_SDKLIBS=\
$(PTHREAD_LIB)
!ifndef STATICLIBS
$(LIBGSSAPI): $(BINDIR)\libgssapi.dll
$(BINDIR)\libgssapi.dll: $(libgssapi_OBJs)
$(DLLGUILINK_C) -IMPLIB:$(LIBGSSAPI) \
-OUT:$(BINDIR)\libgssapi.dll \
$(LIBGSSAPI_LIBS) $(LIBGSSAPI_SDKLIBS) @<<
$(libgssapi_OBJs: =
)
<<
$(_VC_MANIFEST_EMBED_DLL)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
all:: $(BINDIR)\libgssapi.dll
clean::
-$(RM) $(BINDIR)\libgssapi.dll
-$(RM) $(LIBGSSAPI)
!else
$(LIBGSSAPI): $(libgssapi_OBJs)
$(LIBCON_C) -OUT:$@ $(LIBGSSAPI_LIBS) $(LIBGSSAPI_SDKLIBS) @<<
$(libgssapi_OBJs: =
)
<<
all:: $(LIBGSSAPI)
clean::
-$(RM) $(LIBGSSAPI)
!endif
prep:: mkdirs-gss
mkdirs-gss:
!if !exist($(OBJ)\ntlm)
$(MKDIR) $(OBJ)\ntlm
!endif
!if !exist($(OBJ)\krb5)
$(MKDIR) $(OBJ)\krb5
!endif
!if !exist($(OBJ)\spnego)
$(MKDIR) $(OBJ)\spnego
!endif
!if !exist($(OBJ)\mech)
$(MKDIR) $(OBJ)\mech
!endif
!if !exist($(OBJ)\gssapi)
$(MKDIR) $(OBJ)\gssapi
!endif
clean::
-$(RM) $(OBJ)\ntlm\*.*
-$(RM) $(OBJ)\krb5\*.*
-$(RM) $(OBJ)\spnego\*.*
-$(RM) $(OBJ)\mech\*.*
-$(RM) $(OBJ)\gssapi\*.*

View File

@@ -45,10 +45,12 @@
#ifndef BUILD_GSSAPI_LIB
#if defined(_WIN32)
#define GSSAPI_LIB_FUNCTION _stdcall __declspec(dllimport)
#define GSSAPI_LIB_FUNCTION __declspec(dllimport)
#define GSSAPI_LIB_CALL __stdcall
#define GSSAPI_LIB_VARIABLE __declspec(dllimport)
#else
#define GSSAPI_LIB_FUNCTION
#define GSSAPI_LIB_CALL
#define GSSAPI_LIB_VARIABLE
#endif
#endif

View File

@@ -106,27 +106,27 @@ gss_krb5_ccache_name(OM_uint32 * /*minor_status*/,
const char ** /*out_name */);
OM_uint32 GSSAPI_LIB_FUNCTION gsskrb5_register_acceptor_identity
(const char */*identity*/);
(const char * /*identity*/);
OM_uint32 GSSAPI_LIB_FUNCTION krb5_gss_register_acceptor_identity
(const char */*identity*/);
(const char * /*identity*/);
OM_uint32 GSSAPI_LIB_FUNCTION gss_krb5_copy_ccache
(OM_uint32 */*minor*/,
(OM_uint32 * /*minor*/,
gss_cred_id_t /*cred*/,
struct krb5_ccache_data */*out*/);
struct krb5_ccache_data * /*out*/);
OM_uint32 GSSAPI_LIB_FUNCTION
gss_krb5_import_cred(OM_uint32 */*minor*/,
gss_krb5_import_cred(OM_uint32 * /*minor*/,
struct krb5_ccache_data * /*in*/,
struct Principal * /*keytab_principal*/,
struct krb5_keytab_data * /*keytab*/,
gss_cred_id_t */*out*/);
gss_cred_id_t * /*out*/);
OM_uint32 GSSAPI_LIB_FUNCTION gss_krb5_get_tkt_flags
(OM_uint32 */*minor*/,
(OM_uint32 * /*minor*/,
gss_ctx_id_t /*context_handle*/,
OM_uint32 */*tkt_flags*/);
OM_uint32 * /*tkt_flags*/);
OM_uint32 GSSAPI_LIB_FUNCTION
gsskrb5_extract_authz_data_from_sec_context

View File

@@ -44,12 +44,13 @@
#include <string.h>
#include <errno.h>
#include <roken.h>
#include <gssapi.h>
#include <gssapi_ntlm.h>
#include <gssapi_mech.h>
#include <krb5.h>
#include <roken.h>
#include <heim_threads.h>
#include <heimntlm.h>

View File

@@ -44,6 +44,8 @@
#include <sys/param.h>
#endif
#include <roken.h>
#ifdef HAVE_PTHREAD_H
#include <pthread.h>
#endif
@@ -69,8 +71,6 @@
#include "utils.h"
#include <der.h>
#include <roken.h>
#define ALLOC(X, N) (X) = calloc((N), sizeof(*(X)))
typedef struct {

242
lib/hcrypto/NTMakefile Normal file
View File

@@ -0,0 +1,242 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\hcrypto
AUXCFLAGS=$(AUXCFLAGS) -DKRB5 -I$(INCDIR)\hcrypto
!include ../../windows/NTMakefile.w32
# Include files
HCRYPTOINCLUDEDIR=$(INCDIR)\hcrypto
INCFILES= \
$(HCRYPTOINCLUDEDIR)\aes.h \
$(HCRYPTOINCLUDEDIR)\bn.h \
$(HCRYPTOINCLUDEDIR)\des.h \
$(HCRYPTOINCLUDEDIR)\dh.h \
$(HCRYPTOINCLUDEDIR)\dsa.h \
$(HCRYPTOINCLUDEDIR)\engine.h \
$(HCRYPTOINCLUDEDIR)\evp.h \
$(HCRYPTOINCLUDEDIR)\hmac.h \
$(HCRYPTOINCLUDEDIR)\md2.h \
$(HCRYPTOINCLUDEDIR)\md4.h \
$(HCRYPTOINCLUDEDIR)\md5.h \
$(HCRYPTOINCLUDEDIR)\pkcs12.h \
$(HCRYPTOINCLUDEDIR)\rand.h \
$(HCRYPTOINCLUDEDIR)\randi.h \
$(HCRYPTOINCLUDEDIR)\rc2.h \
$(HCRYPTOINCLUDEDIR)\rc4.h \
$(HCRYPTOINCLUDEDIR)\rsa.h \
$(HCRYPTOINCLUDEDIR)\sha.h \
$(HCRYPTOINCLUDEDIR)\ui.h
mkincdir:
!if !exist($(HCRYPTOINCLUDEDIR))
$(MKDIR) $(HCRYPTOINCLUDEDIR)
!endif
{}.h{$(HCRYPTOINCLUDEDIR)}.h:
$(CP) $** $@
all:: mkincdir
all:: $(INCFILES)
# libhcrypto
libhcrypt_OBJs = \
$(OBJ)\imath.obj \
$(OBJ)\iprime.obj \
$(OBJ)\aes.obj \
$(OBJ)\bn.obj \
$(OBJ)\camellia.obj \
$(OBJ)\camellia-ntt.obj \
$(OBJ)\des.obj \
$(OBJ)\dh.obj \
$(OBJ)\dh-imath.obj \
$(OBJ)\dsa.obj \
$(OBJ)\evp.obj \
$(OBJ)\engine.obj \
$(OBJ)\hmac.obj \
$(OBJ)\md2.obj \
$(OBJ)\md4.obj \
$(OBJ)\md5.obj \
$(OBJ)\pkcs5.obj \
$(OBJ)\pkcs12.obj \
$(OBJ)\rand-fortuna.obj \
$(OBJ)\rand-timer.obj \
$(OBJ)\rand.obj \
$(OBJ)\rc2.obj \
$(OBJ)\rc4.obj \
$(OBJ)\rijndael-alg-fst.obj \
$(OBJ)\rnd_keys.obj \
$(OBJ)\rsa.obj \
$(OBJ)\rsa-gmp.obj \
$(OBJ)\rsa-imath.obj \
$(OBJ)\sha.obj \
$(OBJ)\sha256.obj \
$(OBJ)\ui.obj
$(LIBHCRYPTO): $(libhcrypt_OBJs)
$(LIBCON)
{imath/}.c{$(OBJ)}.obj:
$(C2OBJ)
all:: $(LIBHCRYPTO)
clean::
-$(RM) $(LIBHCRYPTO)
# Tests
TESTLIB=$(OBJ)\libhctest.lib
$(TESTLIB): \
$(OBJ)\imath.obj \
$(OBJ)\des.obj \
$(OBJ)\ui.obj
$(LIBCON)
test-binaries: \
$(OBJ)\destest.exe \
$(OBJ)\mdtest.exe \
$(OBJ)\rc2test.exe \
$(OBJ)\rctest.exe \
$(OBJ)\test_bn.exe \
$(OBJ)\test_cipher.exe \
$(OBJ)\test_engine_dso.exe \
$(OBJ)\test_hmac.exe \
$(OBJ)\test_imath.exe \
$(OBJ)\test_pkcs5.exe \
$(OBJ)\test_pkcs12.exe \
$(OBJ)\test_rsa.exe \
$(OBJ)\test_dh.exe \
$(OBJ)\test_rand.exe \
$(OBJ)\test_crypto.sh
$(OBJ)\destest.exe: $(OBJ)\destest.obj $(TESTLIB) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\mdtest.exe: $(OBJ)\mdtest.obj $(LIBHCRYPTO) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\rc2test.exe: $(OBJ)\rc2test.obj $(LIBHCRYPTO) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\rctest.exe: $(OBJ)\rctest.obj $(LIBHCRYPTO) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_bn.exe: $(OBJ)\test_bn.obj $(LIBHCRYPTO) $(LIBROKEN) $(LIBASN1)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_cipher.exe: $(OBJ)\test_cipher.obj $(LIBHCRYPTO) $(LIBROKEN) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_engine_dso.exe: $(OBJ)\test_engine_dso.obj $(LIBHCRYPTO) $(LIBROKEN) $(LIBASN1) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_hmac.exe: $(OBJ)\test_hmac.obj $(LIBHCRYPTO)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_imath.exe: $(OBJ)\test_imath.obj $(TESTLIB) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_pkcs5.exe: $(OBJ)\test_pkcs5.obj $(LIBHCRYPTO) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_pkcs12.exe: $(OBJ)\test_pkcs12.obj $(LIBHCRYPTO) $(LIBASN1) $(LIBROKEN)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_rsa.exe: $(OBJ)\test_rsa.obj $(LIBHCRYPTO) $(LIBROKEN) $(LIBASN1) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_dh.exe: $(OBJ)\test_dh.obj $(LIBHCRYPTO) $(LIBROKEN) $(LIBASN1) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_rand.exe: $(OBJ)\test_rand.obj $(LIBHCRYPTO) $(LIBROKEN) $(LIBASN1) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(OBJ)\test_crypto.sh: test_crypto.in NTMakefile
$(SED) -e "s,[@]srcdir[@],$(SRCDIR),g" -e "s,[@]exeext[@],.exe,g" < test_crypto.in > $@
test-run:
cd $(OBJ)
destest.exe
mdtest.exe
rc2test.exe
rctest.exe
test_bn.exe
test_cipher.exe
test_engine_dso.exe
test_hmac.exe
test_imath.exe
test_pkcs5.exe
test_pkcs12.exe
# test_rsa.exe
# test_dh.exe
!ifdef SH
$(SH) test_crypto.sh
!endif
cd $(SRCDIR)
test:: $(TESTLIB) test-binaries test-run

View File

@@ -69,7 +69,7 @@ void AES_encrypt(const unsigned char *, unsigned char *, const AES_KEY *);
void AES_decrypt(const unsigned char *, unsigned char *, const AES_KEY *);
void AES_cbc_encrypt(const unsigned char *, unsigned char *,
const unsigned long, const AES_KEY *,
unsigned long, const AES_KEY *,
unsigned char *, int);
#ifdef __cplusplus

View File

@@ -40,6 +40,7 @@
#include <limits.h>
#include <krb5-types.h>
#include <roken.h>
#include <rfc2459_asn1.h> /* XXX */
#include <der.h>

View File

@@ -49,6 +49,7 @@
#include <evp-cc.h>
#include <krb5-types.h>
#include <roken.h>
#ifndef HCRYPTO_DEF_PROVIDER
#define HCRYPTO_DEF_PROVIDER hcrypto

View File

@@ -43,6 +43,7 @@
#ifdef KRB5
#include <krb5-types.h>
#endif
#include <roken.h>
#ifndef min
#define min(a,b) (((a)>(b))?(b):(a))

View File

@@ -35,6 +35,9 @@
#include <stdlib.h>
#include <rand.h>
#ifdef KRB5
#include <krb5-types.h>
#endif
#include <roken.h>
#include "randi.h"
@@ -451,6 +454,7 @@ fortuna_reseed(void)
if (!init_done)
abort();
#ifndef NO_RAND_UNIX_METHOD
{
unsigned char buf[INIT_BYTES];
if ((*hc_rand_unix_method.bytes)(buf, sizeof(buf)) == 1) {
@@ -459,6 +463,7 @@ fortuna_reseed(void)
memset(buf, 0, sizeof(buf));
}
}
#endif
#ifdef HAVE_ARC4RANDOM
{
uint32_t buf[INIT_BYTES / sizeof(uint32_t)];
@@ -470,6 +475,7 @@ fortuna_reseed(void)
entropy_p = 1;
}
#endif
#ifndef NO_RAND_EGD_METHOD
/*
* Only to get egd entropy if /dev/random or arc4rand failed since
* it can be horribly slow to generate new bits.
@@ -482,6 +488,7 @@ fortuna_reseed(void)
memset(buf, 0, sizeof(buf));
}
}
#endif
/*
* Fall back to gattering data from timer and secret files, this
* is really the last resort.
@@ -521,10 +528,12 @@ fortuna_reseed(void)
gettimeofday(&tv, NULL);
add_entropy(&main_state, (void *)&tv, sizeof(tv));
}
#ifdef HAVE_GETUID
{
uid_t u = getuid();
add_entropy(&main_state, (void *)&u, sizeof(u));
}
#endif
return entropy_p;
}

View File

@@ -31,11 +31,12 @@
#include "config.h"
#include <stdlib.h>
#ifdef KRB5
#include <krb5-types.h>
#endif
#include <rijndael-alg-fst.h>
#include "rijndael-alg-fst.h"
/* the file should not be used from outside */
typedef uint8_t u8;

View File

@@ -39,11 +39,11 @@
#ifdef KRB5
#include <krb5-types.h>
#endif
#include <stdlib.h>
#include <des.h>
#include <rand.h>
#include <stdlib.h>
#undef __attribute__
#define __attribute__(X)

View File

@@ -36,9 +36,9 @@
srcdir="@srcdir@"
rsa="${TESTS_ENVIRONMENT} ./test_rsa"
engine="${TESTS_ENVIRONMENT} ./test_engine_dso"
rand="${TESTS_ENVIRONMENT} ./test_rand"
rsa="${TESTS_ENVIRONMENT} ./test_rsa@exeext@"
engine="${TESTS_ENVIRONMENT} ./test_engine_dso@exeext@"
rand="${TESTS_ENVIRONMENT} ./test_rand@exeext@"
${engine} --test-random > /dev/null || { echo "missing random"; exit 77; }

View File

@@ -113,10 +113,14 @@ main(int argc, char **argv)
if (rand_method) {
if (strcasecmp(rand_method, "fortuna") == 0)
RAND_set_rand_method(RAND_fortuna_method());
#ifndef NO_RAND_UNIX_METHOD
else if (strcasecmp(rand_method, "unix") == 0)
RAND_set_rand_method(RAND_unix_method());
#endif
#ifndef NO_RAND_EGD_METHOD
else if (strcasecmp(rand_method, "egd") == 0)
RAND_set_rand_method(RAND_egd_method());
#endif
else
errx(1, "unknown method %s", rand_method);
}

View File

@@ -37,10 +37,15 @@
#include <stdlib.h>
#include <string.h>
#include <signal.h>
#ifdef HAVE_TERMIOS_H
#include <termios.h>
#endif
#include <roken.h>
#include <ui.h>
#ifdef HAVE_CONIO_H
#include <conio.h>
#endif
static sig_atomic_t intr_flag;
@@ -50,6 +55,8 @@ intr(int sig)
intr_flag++;
}
#ifndef HAVE_CONIO_H
#ifndef NSIG
#define NSIG 47
#endif
@@ -135,6 +142,51 @@ read_string(const char *preprompt, const char *prompt,
return 0;
}
#else /* CONIO_H */
static int
read_string_conio(const char *preprompt, const char *prompt,
char *buf, size_t len, int echo)
{
int of = 0;
int c;
char *p;
void (*oldsigintr)(int);
_cprintf("%s%s", preprompt, prompt);
oldsigintr = signal(SIGINT, intr);
p = buf;
while(intr_flag == 0){
c = ((echo)? _getche(): _getch());
if(c == '\n')
break;
if(of == 0)
*p++ = c;
of = (p == buf + len);
}
if(of)
p--;
*p = 0;
if(echo == 0){
printf("\n");
}
signal(SIGINT, oldsigintr);
if(intr_flag)
return -2;
if(of)
return -1;
return 0;
}
#define read_string read_string_conio
#endif
int
UI_UTIL_read_pw_string(char *buf, int length, const char *prompt, int verify)
{

161
lib/hdb/NTMakefile Normal file
View File

@@ -0,0 +1,161 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\hdb
!include ../../windows/NTMakefile.w32
gen_files_hdb = \
$(OBJ)\asn1_Salt.x \
$(OBJ)\asn1_Key.x \
$(OBJ)\asn1_Event.x \
$(OBJ)\asn1_HDBFlags.x \
$(OBJ)\asn1_GENERATION.x \
$(OBJ)\asn1_HDB_Ext_PKINIT_acl.x \
$(OBJ)\asn1_HDB_Ext_PKINIT_hash.x \
$(OBJ)\asn1_HDB_Ext_Constrained_delegation_acl.x \
$(OBJ)\asn1_HDB_Ext_Lan_Manager_OWF.x \
$(OBJ)\asn1_HDB_Ext_Password.x \
$(OBJ)\asn1_HDB_Ext_Aliases.x \
$(OBJ)\asn1_HDB_extension.x \
$(OBJ)\asn1_HDB_extensions.x \
$(OBJ)\asn1_hdb_entry.x \
$(OBJ)\asn1_hdb_entry_alias.x
$(gen_files_hdb) $(OBJ)\hdb_asn1.h: $(BINDIR)\asn1_compile.exe hdb.asn1
cd $(OBJ)
$(BINDIR)\asn1_compile.exe $(SRCDIR)\hdb.asn1 hdb_asn1
cd $(SRCDIR)
$(gen_files_hdb:.x=.c): $$(@R).x
!ifdef OPENLDAP_MODULE
ldap_dll = $(BINDIR)\hdb_ldap.dll
ldap_lib = $(LIBDIR)\hdb_ldap.lib
ldap_objs = $(OBJ)\hdb-ldap.obj
$(ldap_dll): $(ldap_objs)
$(DLLGUILINK) -IMPLIB:$(ldap_lib)
$(_VC_MANIFEST_EMBED_DLL)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
clean::
-$(RM) $(ldap_dll)
-$(RM) $(ldap_lib)
!else
ldap = $(OBJ)\hdb-ldap.obj
ldap_c = hdb-ldap.c
!endif
dist_libhdb_la_SOURCES = \
common.c \
db.c \
db3.c \
ext.c \
$(ldap_c) \
hdb.c \
hdb_locl.h \
hdb-private.h \
keys.c \
keytab.c \
dbinfo.c \
mkey.c \
ndbm.c \
print.c
libhdb_OBJs= \
$(OBJ)\common.obj \
$(OBJ)\db.obj \
$(OBJ)\db3.obj \
$(OBJ)\ext.obj \
$(ldap) \
$(OBJ)\hdb.obj \
$(OBJ)\keys.obj \
$(OBJ)\keytab.obj \
$(OBJ)\dbinfo.obj \
$(OBJ)\mkey.obj \
$(OBJ)\ndbm.obj \
$(OBJ)\print.obj \
$(gen_files_hdb:.x=.obj) \
$(OBJ)\hdb_err.obj
$(OBJ)\hdb_err.c $(OBJ)\hdb_err.h: hdb_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\hdb_err.et
cd $(SRCDIR)
$(OBJ)\hdb-protos.h:
$(PERL) ../../cf/make-proto.pl -q -P remove -o $@ $(dist_libhdb_la_SOURCES) \
|| $(RM) $@
$(OBJ)\hdb-private.h:
$(PERL) ../../cf/make-proto.pl -q -P remote -p $@ $(dist_libhdb_la_SOURCES) \
|| $(RM) $@
INCFILES=\
$(INCDIR)\hdb.h \
$(INCDIR)\hdb-protos.h \
$(OBJ)\hdb-private.h \
$(INCDIR)\hdb_err.h \
$(INCDIR)\hdb_asn1.h
$(LIBHDB): $(libhdb_OBJs) $(ldap_lib)
$(LIBCON)
all:: $(INCFILES) $(LIBHDB)
clean::
-$(RM) $(INCFILES)
-$(RM) $(LIBHDB)
test:: test-binaries test-run
test-binaries: $(OBJ)\test_dbinfo.exe
!ifdef OPENLDAP_INC
openldap_inc_flag=-I$(OPENLDAP_INC)
!else
openldap_inc_flag=
!endif
hdb_cflags=-D_HDB_DB_DIR=$(DIR_hdbdir) $(openldap_inc_flag) -I$(OBJ)
{}.c{$(OBJ)}.obj:
$(C2OBJ) $(hdb_cflags)
{$(OBJ)}.c{$(OBJ)}.obj:
$(C2OBJ) $(hdb_cflags)

231
lib/hx509/NTMakefile Normal file
View File

@@ -0,0 +1,231 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\hx509
!include ../../windows/NTMakefile.w32
gen_files_ocsp = \
$(OBJ)\asn1_OCSPBasicOCSPResponse.x \
$(OBJ)\asn1_OCSPCertID.x \
$(OBJ)\asn1_OCSPCertStatus.x \
$(OBJ)\asn1_OCSPInnerRequest.x \
$(OBJ)\asn1_OCSPKeyHash.x \
$(OBJ)\asn1_OCSPRequest.x \
$(OBJ)\asn1_OCSPResponderID.x \
$(OBJ)\asn1_OCSPResponse.x \
$(OBJ)\asn1_OCSPResponseBytes.x \
$(OBJ)\asn1_OCSPResponseData.x \
$(OBJ)\asn1_OCSPResponseStatus.x \
$(OBJ)\asn1_OCSPSignature.x \
$(OBJ)\asn1_OCSPSingleResponse.x \
$(OBJ)\asn1_OCSPTBSRequest.x \
$(OBJ)\asn1_OCSPVersion.x \
$(OBJ)\asn1_id_pkix_ocsp.x \
$(OBJ)\asn1_id_pkix_ocsp_basic.x \
$(OBJ)\asn1_id_pkix_ocsp_nonce.x
gen_files_pkcs10 = \
$(OBJ)\asn1_CertificationRequestInfo.x \
$(OBJ)\asn1_CertificationRequest.x
gen_files_crmf = \
$(OBJ)\asn1_CRMFRDNSequence.x \
$(OBJ)\asn1_CertReqMessages.x \
$(OBJ)\asn1_CertReqMsg.x \
$(OBJ)\asn1_CertRequest.x \
$(OBJ)\asn1_CertTemplate.x \
$(OBJ)\asn1_Controls.x \
$(OBJ)\asn1_PBMParameter.x \
$(OBJ)\asn1_PKMACValue.x \
$(OBJ)\asn1_POPOPrivKey.x \
$(OBJ)\asn1_POPOSigningKey.x \
$(OBJ)\asn1_POPOSigningKeyInput.x \
$(OBJ)\asn1_ProofOfPossession.x \
$(OBJ)\asn1_SubsequentMessage.x
libhx509_la_OBJS = \
$(OBJ)\ca.obj \
$(OBJ)\cert.obj \
$(OBJ)\cms.obj \
$(OBJ)\collector.obj \
$(OBJ)\crypto.obj \
$(OBJ)\error.obj \
$(OBJ)\env.obj \
$(OBJ)\file.obj \
$(OBJ)\hx509_err.obj \
$(OBJ)\sel.obj \
$(OBJ)\sel-gram.obj \
$(OBJ)\sel-lex.obj \
$(OBJ)\keyset.obj \
$(OBJ)\ks_dir.obj \
$(OBJ)\ks_file.obj \
$(OBJ)\ks_mem.obj \
$(OBJ)\ks_null.obj \
$(OBJ)\ks_p11.obj \
$(OBJ)\ks_p12.obj \
$(OBJ)\ks_keychain.obj \
$(OBJ)\lock.obj \
$(OBJ)\name.obj \
$(OBJ)\peer.obj \
$(OBJ)\print.obj \
$(OBJ)\softp11.obj \
$(OBJ)\req.obj \
$(OBJ)\revoke.obj \
$(gen_files_ocsp:.x=.obj) \
$(gen_files_pkcs10:.x=.obj)
$(LIBHX509): $(libhx509_la_OBJS)
$(LIBCON)
dist_libhx509_la_SOURCES = \
$(SRCDIR)\ca.c \
$(SRCDIR)\cert.c \
$(SRCDIR)\cms.c \
$(SRCDIR)\collector.c \
$(SRCDIR)\crypto.c \
$(SRCDIR)\doxygen.c \
$(SRCDIR)\error.c \
$(SRCDIR)\env.c \
$(SRCDIR)\file.c \
$(SRCDIR)\hx509.h \
$(SRCDIR)\hx_locl.h \
$(SRCDIR)\sel.c \
$(SRCDIR)\sel.h \
$(SRCDIR)\sel-gram.y \
$(SRCDIR)\sel-lex.l \
$(SRCDIR)\keyset.c \
$(SRCDIR)\ks_dir.c \
$(SRCDIR)\ks_file.c \
$(SRCDIR)\ks_mem.c \
$(SRCDIR)\ks_null.c \
$(SRCDIR)\ks_p11.c \
$(SRCDIR)\ks_p12.c \
$(SRCDIR)\ks_keychain.c \
$(SRCDIR)\lock.c \
$(SRCDIR)\name.c \
$(SRCDIR)\peer.c \
$(SRCDIR)\print.c \
$(SRCDIR)\softp11.c \
$(SRCDIR)\ref\pkcs11.h \
$(SRCDIR)\req.c \
$(SRCDIR)\revoke.c
AUXCFLAGS=$(AUXCFLAGS) -I$(SRCDIR)\ref -I$(OBJ)
asn1_compile=$(BINDIR)\asn1_compile.exe
$(gen_files_ocsp:.x=.c): $$(@R).x
$(gen_files_pkcs10:.x=.c): $$(@R).x
$(gen_files_crmf:.x=.c): $$(@R).x
$(gen_files_ocsp) $(OBJ)\ocsp_asn1.h: $(asn1_compile) ocsp.asn1
cd $(OBJ)
$(asn1_compile) \
--preserve-binary=OCSPTBSRequest \
--preserve-binary=OCSPResponseData \
$(SRCDIR)\ocsp.asn1 ocsp_asn1 \
|| ( $(RM) -f $(gen_files_ocsp) $(OBJ)\ocsp_asn1.h ; exit /b 1 )
cd $(SRCDIR)
$(gen_files_pkcs10) $(OBJ)\pkcs10_asn1.h: $(asn1_compile) pkcs10.asn1
cd $(OBJ)
$(asn1_compile) \
--preserve-binary=CertificationRequestInfo \
$(SRCDIR)\pkcs10.asn1 pkcs10_asn1 \
|| ( $(RM) -f $(gen_files_pkcs10) $(OBJ)\pkcs10_asn1.h ; exit /b 1 )
cd $(SRCDIR)
$(gen_files_crmf) $(OBJ)\crmf_asn1.h: $(asn1_compile) crmf.asn1
cd $(OBJ)
$(asn1_compile) $(SRCDIR)\crmf.asn1 crmf_asn1 \
|| ( $(RM) -f $(gen_files_crmf) $(OBJ)\crmf_asn1.h ; exit /b 1 )
cd $(SRCDIR)
INCFILES= \
$(INCDIR)\hx509.h \
$(INCDIR)\hx509-protos.h \
$(INCDIR)\hx509-private.h \
$(INCDIR)\hx509_err.h \
$(INCDIR)\ocsp_asn1.h \
$(INCDIR)\pkcs10_asn1.h \
$(INCDIR)\crmf_asn1.h
hxtool.c: $(OBJ)\hxtool-commands.h
SLC=$(BINDIR)\slc.exe
$(OBJ)\hxtool-commands.c $(OBJ)\hxtool-commands.h: hxtool-commands.in $(SLC)
cd $(OBJ)
$(CP) $(SRCDIR)\hxtool-commands.in $(OBJ)\hxtool-commands.in
$(SLC) hxtool-commands.in
cd $(SRCDIR)
$(BINDIR)\hxtool.exe: $(OBJ)\hxtool.obj $(OBJ)\hxtool-commands.obj $(LIBHX509)
$(EXECONLINK) $(LIBASN1) $(LIBHCRYPTO) $(LIBROKEN) $(LIBSL) $(LIBVERS) $(LIBWIND) $(LIBCOMERR)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
$(OBJ)\hx509-protos.h:
cd $(OBJ)
$(PERL) $(SRCDIR)\..\..\cf\make-proto.pl -R "^(_|^C)" -E HX509_LIB -q -P remove -o hx509-protos.h $(dist_libhx509_la_SOURCES) || $(RM) -f hx509-protos.h
cd $(SRCDIR)
$(OBJ)\hx509-private.h:
cd $(OBJ)
$(PERL) $(SRCDIR)\..\..\cf\make-proto.pl -q -P remove -p hx509-private.h $(dist_libhx509_la_SOURCES) || $(RM) -f hx509-private.h
cd $(SRCDIR)
$(OBJ)\hx509_err.c $(OBJ)\hx509_err.h: hx509_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\hx509_err.et
cd $(SRCDIR)
$(OBJ)\sel-gram.obj: $(OBJ)\sel-gram.c
$(C2OBJ) -I$(SRCDIR)
$(OBJ)\sel-lex.obj: $(OBJ)\sel-lex.c
$(C2OBJ) -I$(SRCDIR) -I$(OBJ)
$(OBJ)\sel-gram.c: sel-gram.y
$(YACC) -o $@ --defines=$(OBJ)\sel-gram.h sel-gram.y
$(OBJ)\sel-lex.c: sel-lex.l
$(LEX) -o$@ sel-lex.l
all:: $(INCFILES) $(LIBHX509) $(BINDIR)\hxtool.exe
clean::
-$(RM) $(BINDIR)\hxtool.exe

View File

@@ -39,16 +39,19 @@
#include <stdlib.h>
#include <ctype.h>
#include <errno.h>
#ifdef HAVE_STRINGS_H
#include <strings.h>
#endif
#include <assert.h>
#include <stdarg.h>
#include <err.h>
#include <limits.h>
#include <roken.h>
#include <getarg.h>
#include <base64.h>
#include <hex.h>
#include <roken.h>
#include <com_err.h>
#include <parse_units.h>
#include <parse_bytes.h>

View File

@@ -31,6 +31,8 @@
* SUCH DAMAGE.
*/
#define CRYPTOKI_EXPORTS 1
#include "hx_locl.h"
#include "pkcs11.h"
@@ -38,6 +40,14 @@
#define HANDLE_OBJECT_ID(h) ((h) & OBJECT_ID_MASK)
#define OBJECT_ID(obj) HANDLE_OBJECT_ID((obj)->object_handle)
#ifndef HAVE_RANDOM
#define random() rand()
#define srandom(s) srand(s)
#endif
#ifdef _WIN32
#include <shlobj.h>
#endif
struct st_attr {
CK_ATTRIBUTE attribute;
@@ -687,6 +697,11 @@ read_conf_file(const char *fn, CK_USER_TYPE userType, const char *pin)
CK_RV ret = CKR_OK;
CK_RV failed = CKR_OK;
if (fn == NULL) {
st_logf("Can't open configuration file. No file specified\n");
return CKR_GENERAL_ERROR;
}
f = fopen(fn, "r");
if (f == NULL) {
st_logf("can't open configuration file %s\n", fn);
@@ -792,7 +807,52 @@ func_not_supported(void)
return CKR_FUNCTION_NOT_SUPPORTED;
}
CK_RV
static char *
get_config_file_for_user(void)
{
char *fn = NULL, *home = NULL;
#ifndef _WIN32
if (getuid() == geteuid()) {
fn = getenv("SOFTPKCS11RC");
if (fn)
fn = strdup(fn);
home = getenv("HOME");
}
if (fn == NULL && home == NULL) {
struct passwd *pw = getpwuid(getuid());
if(pw != NULL)
home = pw->pw_dir;
}
if (fn == NULL) {
if (home)
asprintf(&fn, "%s/.soft-token.rc", home);
else
fn = strdup("/etc/soft-token.rc");
}
#else /* Windows */
char appdatafolder[MAX_PATH];
fn = getenv("SOFTPKCS11RC");
/* Retrieve the roaming AppData folder for the current user. The
current user is the user account represented by the current
thread token. */
if (fn == NULL &&
SUCCEEDED(SHGetFolderPath(NULL, CSIDL_APPDATA, NULL, SHGFP_TYPE_CURRENT, appdatafolder))) {
asprintf(&fn, "%s\\.soft-token.rc", appdatafolder);
}
#endif /* _WIN32 */
return fn;
}
CK_RV CK_SPEC
C_Initialize(CK_VOID_PTR a)
{
CK_C_INITIALIZE_ARGS_PTR args = a;
@@ -805,7 +865,7 @@ C_Initialize(CK_VOID_PTR a)
OpenSSL_add_all_algorithms();
srandom(getpid() ^ time(NULL));
srandom(getpid() ^ (int) time(NULL));
for (i = 0; i < MAX_NUM_SESSION; i++) {
soft_token.state[i].session_handle = CK_INVALID_HANDLE;
@@ -838,29 +898,7 @@ C_Initialize(CK_VOID_PTR a)
st_logf("\tFlags\t%04x\n", (unsigned int)args->flags);
}
{
char *fn = NULL, *home = NULL;
if (getuid() == geteuid()) {
fn = getenv("SOFTPKCS11RC");
if (fn)
fn = strdup(fn);
home = getenv("HOME");
}
if (fn == NULL && home == NULL) {
struct passwd *pw = getpwuid(getuid());
if(pw != NULL)
home = pw->pw_dir;
}
if (fn == NULL) {
if (home)
asprintf(&fn, "%s/.soft-token.rc", home);
else
fn = strdup("/etc/soft-token.rc");
}
soft_token.config_file = fn;
}
soft_token.config_file = get_config_file_for_user();
/*
* This operations doesn't return CKR_OK if any of the
@@ -1456,7 +1494,7 @@ C_Sign(CK_SESSION_HANDLE hSession,
struct session_state *state;
struct st_object *o;
CK_RV ret;
uint hret;
int hret;
const AlgorithmIdentifier *alg;
heim_octet_string sig, data;

35
lib/kadm5/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\kadm5
!include ../../windows/NTMakefile.w32

View File

@@ -61,7 +61,7 @@ add_tl_data(kadm5_principal_ent_t ent, int16_t type,
return 0;
}
krb5_ssize_t KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_ssize_t KRB5_LIB_CALL
_krb5_put_int(void *buffer, unsigned long value, size_t size); /* XXX */
kadm5_ret_t

35
lib/kafs/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\kafs
!include ../../windows/NTMakefile.w32

35
lib/kdfs/NTMakefile Normal file
View File

@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\kdfs
!include ../../windows/NTMakefile.w32

442
lib/krb5/NTMakefile Normal file
View File

@@ -0,0 +1,442 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=lib\krb5
!include ../../windows/NTMakefile.w32
libkrb5_OBJS = \
$(OBJ)\acache.obj \
$(OBJ)\acl.obj \
$(OBJ)\add_et_list.obj \
$(OBJ)\addr_families.obj \
$(OBJ)\aname_to_localname.obj \
$(OBJ)\appdefault.obj \
$(OBJ)\asn1_glue.obj \
$(OBJ)\auth_context.obj \
$(OBJ)\build_ap_req.obj \
$(OBJ)\build_auth.obj \
$(OBJ)\cache.obj \
$(OBJ)\changepw.obj \
$(OBJ)\codec.obj \
$(OBJ)\config_file.obj \
$(OBJ)\config_file_netinfo.obj \
$(OBJ)\convert_creds.obj \
$(OBJ)\constants.obj \
$(OBJ)\context.obj \
$(OBJ)\copy_host_realm.obj \
$(OBJ)\crc.obj \
$(OBJ)\creds.obj \
$(OBJ)\crypto.obj \
$(OBJ)\data.obj \
$(OBJ)\digest.obj \
$(OBJ)\eai_to_heim_errno.obj \
$(OBJ)\error_string.obj \
$(OBJ)\expand_hostname.obj \
$(OBJ)\expand_path_w32.obj \
$(OBJ)\fcache.obj \
$(OBJ)\free.obj \
$(OBJ)\free_host_realm.obj \
$(OBJ)\generate_seq_number.obj \
$(OBJ)\generate_subkey.obj \
$(OBJ)\get_addrs.obj \
$(OBJ)\get_cred.obj \
$(OBJ)\get_default_principal.obj \
$(OBJ)\get_default_realm.obj \
$(OBJ)\get_for_creds.obj \
$(OBJ)\get_host_realm.obj \
$(OBJ)\get_in_tkt.obj \
$(OBJ)\get_in_tkt_pw.obj \
$(OBJ)\get_in_tkt_with_keytab.obj \
$(OBJ)\get_in_tkt_with_skey.obj \
$(OBJ)\get_port.obj \
$(OBJ)\init_creds.obj \
$(OBJ)\init_creds_pw.obj \
$(OBJ)\kcm.obj \
$(OBJ)\keyblock.obj \
$(OBJ)\keytab.obj \
$(OBJ)\keytab_any.obj \
$(OBJ)\keytab_file.obj \
$(OBJ)\keytab_keyfile.obj \
$(OBJ)\keytab_krb4.obj \
$(OBJ)\keytab_memory.obj \
$(OBJ)\krbhst.obj \
$(OBJ)\kuserok.obj \
$(OBJ)\log.obj \
$(OBJ)\mcache.obj \
$(OBJ)\misc.obj \
$(OBJ)\mk_error.obj \
$(OBJ)\mk_priv.obj \
$(OBJ)\mk_rep.obj \
$(OBJ)\mk_req.obj \
$(OBJ)\mk_req_ext.obj \
$(OBJ)\mk_safe.obj \
$(OBJ)\mit_glue.obj \
$(OBJ)\net_read.obj \
$(OBJ)\net_write.obj \
$(OBJ)\n-fold.obj \
$(OBJ)\pac.obj \
$(OBJ)\padata.obj \
$(OBJ)\pkinit.obj \
$(OBJ)\principal.obj \
$(OBJ)\prog_setup.obj \
$(OBJ)\prompter_posix.obj \
$(OBJ)\rd_cred.obj \
$(OBJ)\rd_error.obj \
$(OBJ)\rd_priv.obj \
$(OBJ)\rd_rep.obj \
$(OBJ)\rd_req.obj \
$(OBJ)\rd_safe.obj \
$(OBJ)\read_message.obj \
$(OBJ)\recvauth.obj \
$(OBJ)\replay.obj \
$(OBJ)\scache.obj \
$(OBJ)\send_to_kdc.obj \
$(OBJ)\sendauth.obj \
$(OBJ)\set_default_realm.obj \
$(OBJ)\sock_principal.obj \
$(OBJ)\store.obj \
$(OBJ)\store_emem.obj \
$(OBJ)\store_fd.obj \
$(OBJ)\store_mem.obj \
$(OBJ)\plugin.obj \
$(OBJ)\ticket.obj \
$(OBJ)\time.obj \
$(OBJ)\transited.obj \
$(OBJ)\v4_glue.obj \
$(OBJ)\verify_init.obj \
$(OBJ)\verify_user.obj \
$(OBJ)\version.obj \
$(OBJ)\warn.obj \
$(OBJ)\write_message.obj
libkrb5_gen_OBJS= \
$(OBJ)\krb5_err.obj \
$(OBJ)\krb_err.obj \
$(OBJ)\heim_err.obj \
$(OBJ)\k524_err.obj
INCFILES= \
$(INCDIR)\heim_err.h \
$(INCDIR)\heim_threads.h \
$(INCDIR)\k524_err.h \
$(INCDIR)\krb_err.h \
$(INCDIR)\krb5.h \
$(INCDIR)\krb5_ccapi.h \
$(INCDIR)\krb5_err.h \
$(INCDIR)\krb5_locl.h \
$(INCDIR)\krb5-protos.h \
$(INCDIR)\krb5-private.h
all:: $(INCFILES)
clean::
-$(RM) $(INCFILES)
dist_libkrb5_la_SOURCES = \
acache.c \
acl.c \
add_et_list.c \
addr_families.c \
aname_to_localname.c \
appdefault.c \
asn1_glue.c \
auth_context.c \
build_ap_req.c \
build_auth.c \
cache.c \
changepw.c \
codec.c \
config_file.c \
config_file_netinfo.c \
convert_creds.c \
constants.c \
context.c \
copy_host_realm.c \
crc.c \
creds.c \
crypto.c \
doxygen.c \
data.c \
digest.c \
eai_to_heim_errno.c \
error_string.c \
expand_hostname.c \
expand_path_w32.c \
fcache.c \
free.c \
free_host_realm.c \
generate_seq_number.c \
generate_subkey.c \
get_addrs.c \
get_cred.c \
get_default_principal.c \
get_default_realm.c \
get_for_creds.c \
get_host_realm.c \
get_in_tkt.c \
get_in_tkt_pw.c \
get_in_tkt_with_keytab.c \
get_in_tkt_with_skey.c \
get_port.c \
heim_threads.h \
init_creds.c \
init_creds_pw.c \
kcm.c \
kcm.h \
keyblock.c \
keytab.c \
keytab_any.c \
keytab_file.c \
keytab_keyfile.c \
keytab_krb4.c \
keytab_memory.c \
krb5_locl.h \
krb5-v4compat.h \
krbhst.c \
kuserok.c \
log.c \
mcache.c \
misc.c \
mk_error.c \
mk_priv.c \
mk_rep.c \
mk_req.c \
mk_req_ext.c \
mk_safe.c \
mit_glue.c \
net_read.c \
net_write.c \
n-fold.c \
pac.c \
padata.c \
pkinit.c \
principal.c \
prog_setup.c \
prompter_posix.c \
rd_cred.c \
rd_error.c \
rd_priv.c \
rd_rep.c \
rd_req.c \
rd_safe.c \
read_message.c \
recvauth.c \
replay.c \
scache.c \
send_to_kdc.c \
sendauth.c \
set_default_realm.c \
sock_principal.c \
store.c \
store-int.h \
store_emem.c \
store_fd.c \
store_mem.c \
plugin.c \
ticket.c \
time.c \
transited.c \
v4_glue.c \
verify_init.c \
verify_user.c \
version.c \
warn.c \
write_message.c
$(OBJ)\krb5-protos.h: $(dist_libkrb5_la_SOURCES)
$(PERL) ..\..\cf\make-proto.pl -E KRB5_LIB -q -P remove -o $(OBJ)\krb5-protos.h $(dist_libkrb5_la_SOURCES) || $(RM) -f krb5-protos.h
$(OBJ)\krb5-private.h: $(dist_libkrb5_la_SOURCES)
$(PERL) ..\..\cf\make-proto.pl -q -P remove -p $(OBJ)\krb5-private.h $(dist_libkrb5_la_SOURCES) || $(RM) -f krb5-private.h
$(OBJ)\krb5_err.c $(OBJ)\krb5_err.h: krb5_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\krb5_err.et
cd $(SRCDIR)
$(OBJ)\krb_err.c $(OBJ)\krb_err.h: krb_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\krb_err.et
cd $(SRCDIR)
$(OBJ)\heim_err.c $(OBJ)\heim_err.h: heim_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\heim_err.et
cd $(SRCDIR)
$(OBJ)\k524_err.c $(OBJ)\k524_err.h: k524_err.et
cd $(OBJ)
$(BINDIR)\compile_et.exe $(SRCDIR)\k524_err.et
cd $(SRCDIR)
#----------------------------------------------------------------------
# libkrb5
!ifdef STATICLIBS
$(LIBKRB5): $(libkrb5_OBJS) $(libkrb5_gen_OBJS)
$(LIBCON)
all:: $(LIBKRB5)
clean::
-$(RM) $(LIBKRB5)
!else
DLLDEPS= \
$(LIBROKEN) \
$(LIBASN1) \
$(LIBSQLITE) \
$(LIBCOMERR) \
$(LIBHCRYPTO) \
$(LIBHX509) \
$(LIBWIND)
DLLSDKDEPS= \
$(PTHREAD_LIB) \
secur32.lib \
shell32.lib
$(LIBKRB5): $(BINDIR)\libkrb5.dll
$(BINDIR)\libkrb5.dll: $(libkrb5_OBJS) $(libkrb5_gen_OBJS) $(DLLDEPS)
$(DLLGUILINK_C) -out:$(BINDIR)\libkrb5.dll -implib:$(LIBKRB5) \
$(DLLDEPS) $(DLLSDKDEPS) -def:libkrb5-exports.def @<<
$(libkrb5_OBJS: =
)
$(libkrb5_gen_OBJS: =
)
<<
$(_VC_MANIFEST_EMBED_DLL)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
all:: $(BINDIR)\libkrb5.dll
clean::
-$(RM) $(BINDIR)\libkrb5.dll
-$(RM) $(LIBKRB5)
!endif
all:: $(BINDIR)\verify_krb5_conf.exe
clean::
-$(RM) $(BINDIR)\verify_krb5_conf.exe
$(BINDIR)\verify_krb5_conf.exe: $(OBJ)\verify_krb5_conf.obj $(LIBKRB5) $(LIBROKEN) $(LIBVERS)
$(EXECONLINK)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(_CODESIGN)
{}.c{$(OBJ)}.obj:
$(C2OBJ) -DBUILD_KRB5_LIB
{$(OBJ)}.c{$(OBJ)}.obj:
$(C2OBJ) -DBUILD_KRB5_LIB
#----------------------------------------------------------------------
# Tests
test:: test-binaries test-run
test_binaries = \
$(OBJ)\krbhst-test.exe \
$(OBJ)\test_alname.exe \
$(OBJ)\test_crypto.exe \
$(OBJ)\test_get_addrs.exe \
$(OBJ)\test_kuserok.exe \
$(OBJ)\test_renew.exe \
$(OBJ)\test_forward.exe \
$(OBJ)\aes-test.exe \
$(OBJ)\derived-key-test.exe \
$(OBJ)\n-fold-test.exe \
$(OBJ)\name-45-test.exe \
$(OBJ)\parse-name-test.exe \
$(OBJ)\store-test.exe \
$(OBJ)\string-to-key-test.exe \
$(OBJ)\test_acl.exe \
$(OBJ)\test_addr.exe \
$(OBJ)\test_cc.exe \
$(OBJ)\test_config.exe \
$(OBJ)\test_hostname.exe \
$(OBJ)\test_prf.exe \
$(OBJ)\test_store.exe \
$(OBJ)\test_crypto_wrapping.exe \
$(OBJ)\test_keytab.exe \
$(OBJ)\test_mem.exe \
$(OBJ)\test_pac.exe \
$(OBJ)\test_plugin.exe \
$(OBJ)\test_princ.exe \
$(OBJ)\test_pkinit_dh2key.exe \
$(OBJ)\test_pknistkdf.exe \
$(OBJ)\test_time.exe
test-binaries: $(test_binaries)
test-run:
cd $(OBJ)
aes-test.exe
derived-key-test.exe
n-fold-test.exe
name-45-test.exe
parse-name-test.exe
store-test.exe
string-to-key-test.exe
test_acl.exe
-test_addr.exe
test_cc.exe
test_config.exe
test_prf.exe
test_store.exe
test_crypto_wrapping.exe
test_keytab.exe
test_mem.exe
test_pac.exe
test_plugin.exe
test_princ.exe
test_pkinit_dh2key.exe
test_pknistkdf.exe
test_time.exe
cd $(SRCDIR)
$(test_binaries): $$(@R).obj
$(EXECONLINK) $(LIBKRB5) $(LIBVERS) $(LIBROKEN) $(LIBHCRYPTO) $(LIBASN1)
$(_VC_MANIFEST_EMBED_EXE)
$(_VC_MANIFEST_CLEAN)
$(test_binaries:.exe=.obj): $$(@B).c
$(C2OBJ_C) -Fo$@ -Fd$(@D)\ $** -DBlah

View File

@@ -198,7 +198,7 @@ acl_match_acl(krb5_context context,
* @ingroup krb5_support
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_acl_match_string(krb5_context context,
const char *string,
const char *format,
@@ -241,7 +241,7 @@ krb5_acl_match_string(krb5_context context,
* @ingroup krb5_support
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_acl_match_file(krb5_context context,
const char *file,
const char *format,

View File

@@ -47,7 +47,7 @@
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_add_et_list (krb5_context context,
void (*func)(struct et_list **))
{

View File

@@ -175,16 +175,8 @@ ipv4_parse_addr (krb5_context context, const char *address, krb5_address *addr)
return -1;
} else
p = address;
#ifdef HAVE_INET_ATON
if(inet_aton(p, &a) == 0)
return -1;
#elif defined(HAVE_INET_ADDR)
a.s_addr = inet_addr(p);
if(a.s_addr == INADDR_NONE)
return -1;
#else
return -1;
#endif
addr->addr_type = KRB5_ADDRESS_INET;
if(krb5_data_alloc(&addr->address, 4) != 0)
return -1;
@@ -339,9 +331,7 @@ static int
ipv6_print_addr (const krb5_address *addr, char *str, size_t len)
{
char buf[128], buf2[3];
#ifdef HAVE_INET_NTOP
if(inet_ntop(AF_INET6, addr->address.data, buf, sizeof(buf)) == NULL)
#endif
{
/* XXX this is pretty ugly, but better than abort() */
int i;
@@ -790,7 +780,7 @@ find_atype(int atype)
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_sockaddr2address (krb5_context context,
const struct sockaddr *sa, krb5_address *addr)
{
@@ -818,7 +808,7 @@ krb5_sockaddr2address (krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_sockaddr2port (krb5_context context,
const struct sockaddr *sa, int16_t *port)
{
@@ -853,7 +843,7 @@ krb5_sockaddr2port (krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_addr2sockaddr (krb5_context context,
const krb5_address *addr,
struct sockaddr *sa,
@@ -889,7 +879,7 @@ krb5_addr2sockaddr (krb5_context context,
* @ingroup krb5_address
*/
size_t KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION size_t KRB5_LIB_CALL
krb5_max_sockaddr_size (void)
{
if (max_sockaddr_size == 0) {
@@ -913,7 +903,7 @@ krb5_max_sockaddr_size (void)
* @ingroup krb5_address
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_sockaddr_uninteresting(const struct sockaddr *sa)
{
struct addr_operations *a = find_af(sa->sa_family);
@@ -941,7 +931,7 @@ krb5_sockaddr_uninteresting(const struct sockaddr *sa)
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_h_addr2sockaddr (krb5_context context,
int af,
const char *addr, struct sockaddr *sa,
@@ -972,7 +962,7 @@ krb5_h_addr2sockaddr (krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_h_addr2addr (krb5_context context,
int af,
const char *haddr, krb5_address *addr)
@@ -1003,7 +993,7 @@ krb5_h_addr2addr (krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_anyaddr (krb5_context context,
int af,
struct sockaddr *sa,
@@ -1038,7 +1028,7 @@ krb5_anyaddr (krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_print_address (const krb5_address *addr,
char *str, size_t len, size_t *ret_len)
{
@@ -1088,7 +1078,7 @@ krb5_print_address (const krb5_address *addr,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_parse_address(krb5_context context,
const char *string,
krb5_addresses *addresses)
@@ -1169,7 +1159,7 @@ krb5_parse_address(krb5_context context,
* @ingroup krb5_address
*/
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_address_order(krb5_context context,
const krb5_address *addr1,
const krb5_address *addr2)
@@ -1218,7 +1208,7 @@ krb5_address_order(krb5_context context,
* @ingroup krb5_address
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_address_compare(krb5_context context,
const krb5_address *addr1,
const krb5_address *addr2)
@@ -1239,7 +1229,7 @@ krb5_address_compare(krb5_context context,
* @ingroup krb5_address
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_address_search(krb5_context context,
const krb5_address *addr,
const krb5_addresses *addrlist)
@@ -1264,7 +1254,7 @@ krb5_address_search(krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_free_address(krb5_context context,
krb5_address *address)
{
@@ -1288,7 +1278,7 @@ krb5_free_address(krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_free_addresses(krb5_context context,
krb5_addresses *addresses)
{
@@ -1314,7 +1304,7 @@ krb5_free_addresses(krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_copy_address(krb5_context context,
const krb5_address *inaddr,
krb5_address *outaddr)
@@ -1338,7 +1328,7 @@ krb5_copy_address(krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_copy_addresses(krb5_context context,
const krb5_addresses *inaddr,
krb5_addresses *outaddr)
@@ -1365,7 +1355,7 @@ krb5_copy_addresses(krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_append_addresses(krb5_context context,
krb5_addresses *dest,
const krb5_addresses *source)
@@ -1409,7 +1399,7 @@ krb5_append_addresses(krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_make_addrport (krb5_context context,
krb5_address **res, const krb5_address *addr, int16_t port)
{
@@ -1476,7 +1466,7 @@ krb5_make_addrport (krb5_context context,
* @ingroup krb5_address
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_address_prefixlen_boundary(krb5_context context,
const krb5_address *inaddr,
unsigned long prefixlen,

View File

@@ -31,9 +31,9 @@
* SUCH DAMAGE.
*/
#include <krb5_locl.h>
#include "krb5_locl.h"
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_aname_to_localname (krb5_context context,
krb5_const_principal aname,
size_t lnsize,

View File

@@ -33,7 +33,7 @@
#include "krb5_locl.h"
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_appdefault_boolean(krb5_context context, const char *appname,
krb5_const_realm realm, const char *option,
krb5_boolean def_val, krb5_boolean *ret_val)
@@ -119,7 +119,7 @@ krb5_appdefault_string(krb5_context context, const char *appname,
*ret_val = NULL;
}
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_appdefault_time(krb5_context context, const char *appname,
krb5_const_realm realm, const char *option,
time_t def_val, time_t *ret_val)

View File

@@ -37,14 +37,14 @@
#include "krb5_locl.h"
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
_krb5_principal2principalname (PrincipalName *p,
const krb5_principal from)
{
return copy_PrincipalName(&from->name, p);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
_krb5_principalname2krb5_principal (krb5_context context,
krb5_principal *principal,
const PrincipalName from,

View File

@@ -33,7 +33,7 @@
#include "krb5_locl.h"
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_init(krb5_context context,
krb5_auth_context *auth_context)
{
@@ -64,7 +64,7 @@ krb5_auth_con_init(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_free(krb5_context context,
krb5_auth_context auth_context)
{
@@ -86,7 +86,7 @@ krb5_auth_con_free(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setflags(krb5_context context,
krb5_auth_context auth_context,
int32_t flags)
@@ -96,7 +96,7 @@ krb5_auth_con_setflags(krb5_context context,
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getflags(krb5_context context,
krb5_auth_context auth_context,
int32_t *flags)
@@ -105,7 +105,7 @@ krb5_auth_con_getflags(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_addflags(krb5_context context,
krb5_auth_context auth_context,
int32_t addflags,
@@ -117,7 +117,7 @@ krb5_auth_con_addflags(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_removeflags(krb5_context context,
krb5_auth_context auth_context,
int32_t removeflags,
@@ -129,7 +129,7 @@ krb5_auth_con_removeflags(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setaddrs(krb5_context context,
krb5_auth_context auth_context,
krb5_address *local_addr,
@@ -154,7 +154,7 @@ krb5_auth_con_setaddrs(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_genaddrs(krb5_context context,
krb5_auth_context auth_context,
int fd, int flags)
@@ -216,7 +216,7 @@ krb5_auth_con_genaddrs(krb5_context context,
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setaddrs_from_fd (krb5_context context,
krb5_auth_context auth_context,
void *p_fd)
@@ -230,7 +230,7 @@ krb5_auth_con_setaddrs_from_fd (krb5_context context,
return krb5_auth_con_genaddrs(context, auth_context, fd, flags);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getaddrs(krb5_context context,
krb5_auth_context auth_context,
krb5_address **local_addr,
@@ -273,7 +273,7 @@ copy_key(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock **keyblock)
@@ -281,7 +281,7 @@ krb5_auth_con_getkey(krb5_context context,
return copy_key(context, auth_context->keyblock, keyblock);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getlocalsubkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock **keyblock)
@@ -289,7 +289,7 @@ krb5_auth_con_getlocalsubkey(krb5_context context,
return copy_key(context, auth_context->local_subkey, keyblock);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getremotesubkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock **keyblock)
@@ -297,7 +297,7 @@ krb5_auth_con_getremotesubkey(krb5_context context,
return copy_key(context, auth_context->remote_subkey, keyblock);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock *keyblock)
@@ -307,7 +307,7 @@ krb5_auth_con_setkey(krb5_context context,
return copy_key(context, keyblock, &auth_context->keyblock);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setlocalsubkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock *keyblock)
@@ -317,7 +317,7 @@ krb5_auth_con_setlocalsubkey(krb5_context context,
return copy_key(context, keyblock, &auth_context->local_subkey);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_generatelocalsubkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock *key)
@@ -337,7 +337,7 @@ krb5_auth_con_generatelocalsubkey(krb5_context context,
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setremotesubkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock *keyblock)
@@ -347,7 +347,7 @@ krb5_auth_con_setremotesubkey(krb5_context context,
return copy_key(context, keyblock, &auth_context->remote_subkey);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setcksumtype(krb5_context context,
krb5_auth_context auth_context,
krb5_cksumtype cksumtype)
@@ -356,7 +356,7 @@ krb5_auth_con_setcksumtype(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getcksumtype(krb5_context context,
krb5_auth_context auth_context,
krb5_cksumtype *cksumtype)
@@ -365,7 +365,7 @@ krb5_auth_con_getcksumtype(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setkeytype (krb5_context context,
krb5_auth_context auth_context,
krb5_keytype keytype)
@@ -374,7 +374,7 @@ krb5_auth_con_setkeytype (krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getkeytype (krb5_context context,
krb5_auth_context auth_context,
krb5_keytype *keytype)
@@ -384,7 +384,7 @@ krb5_auth_con_getkeytype (krb5_context context,
}
#if 0
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setenctype(krb5_context context,
krb5_auth_context auth_context,
krb5_enctype etype)
@@ -398,7 +398,7 @@ krb5_auth_con_setenctype(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getenctype(krb5_context context,
krb5_auth_context auth_context,
krb5_enctype *etype)
@@ -407,7 +407,7 @@ krb5_auth_con_getenctype(krb5_context context,
}
#endif
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getlocalseqnumber(krb5_context context,
krb5_auth_context auth_context,
int32_t *seqnumber)
@@ -416,7 +416,7 @@ krb5_auth_con_getlocalseqnumber(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setlocalseqnumber (krb5_context context,
krb5_auth_context auth_context,
int32_t seqnumber)
@@ -425,7 +425,7 @@ krb5_auth_con_setlocalseqnumber (krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_FUNCTION
krb5_auth_con_getremoteseqnumber(krb5_context context,
krb5_auth_context auth_context,
int32_t *seqnumber)
@@ -434,7 +434,7 @@ krb5_auth_con_getremoteseqnumber(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setremoteseqnumber (krb5_context context,
krb5_auth_context auth_context,
int32_t seqnumber)
@@ -444,7 +444,7 @@ krb5_auth_con_setremoteseqnumber (krb5_context context,
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getauthenticator(krb5_context context,
krb5_auth_context auth_context,
krb5_authenticator *authenticator)
@@ -461,7 +461,7 @@ krb5_auth_con_getauthenticator(krb5_context context,
}
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_free_authenticator(krb5_context context,
krb5_authenticator *authenticator)
{
@@ -471,7 +471,7 @@ krb5_free_authenticator(krb5_context context,
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setuserkey(krb5_context context,
krb5_auth_context auth_context,
krb5_keyblock *keyblock)
@@ -481,7 +481,7 @@ krb5_auth_con_setuserkey(krb5_context context,
return krb5_copy_keyblock(context, keyblock, &auth_context->keyblock);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_getrcache(krb5_context context,
krb5_auth_context auth_context,
krb5_rcache *rcache)
@@ -490,7 +490,7 @@ krb5_auth_con_getrcache(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setrcache(krb5_context context,
krb5_auth_context auth_context,
krb5_rcache rcache)
@@ -501,7 +501,7 @@ krb5_auth_con_setrcache(krb5_context context,
#if 0 /* not implemented */
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_initivector(krb5_context context,
krb5_auth_context auth_context)
{
@@ -509,7 +509,7 @@ krb5_auth_con_initivector(krb5_context context,
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_auth_con_setivector(krb5_context context,
krb5_auth_context auth_context,
krb5_pointer ivector)

View File

@@ -31,9 +31,9 @@
* SUCH DAMAGE.
*/
#include <krb5_locl.h>
#include "krb5_locl.h"
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_build_ap_req (krb5_context context,
krb5_enctype enctype,
krb5_creds *cred,

View File

@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*/
#include <krb5_locl.h>
#include "krb5_locl.h"
static krb5_error_code
make_etypelist(krb5_context context,
@@ -99,14 +99,14 @@ make_etypelist(krb5_context context,
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
_krb5_build_authenticator(krb5_context context,
krb5_auth_context auth_context,
krb5_enctype enctype,
krb5_creds *cred,
Checksum *cksum,
krb5_data *result,
krb5_key_usage usage)
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
_krb5_build_authenticator (krb5_context context,
krb5_auth_context auth_context,
krb5_enctype enctype,
krb5_creds *cred,
Checksum *cksum,
krb5_data *result,
krb5_key_usage usage)
{
Authenticator auth;
u_char *buf = NULL;

View File

@@ -114,7 +114,7 @@ main (int argc, char **argv)
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_register(krb5_context context,
const krb5_cc_ops *ops,
krb5_boolean override)
@@ -186,13 +186,34 @@ allocate_ccache (krb5_context context,
krb5_ccache *id)
{
krb5_error_code ret;
char * exp_residual = NULL;
ret = _krb5_cc_allocate(context, ops, id);
#ifdef KRB5_USE_PATH_TOKENS
ret = _krb5_expand_path_tokens(context, residual, &exp_residual);
if (ret)
return ret;
residual = exp_residual;
#endif
ret = _krb5_cc_allocate(context, ops, id);
if (ret) {
#ifdef KRB5_USE_PATH_TOKENS
if (exp_residual)
free(exp_residual);
#endif
return ret;
}
ret = (*id)->ops->resolve(context, id, residual);
if(ret)
free(*id);
#ifdef KRB5_USE_PATH_TOKENS
if (exp_residual)
free(exp_residual);
#endif
return ret;
}
@@ -211,7 +232,7 @@ allocate_ccache (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_resolve(krb5_context context,
const char *name,
krb5_ccache *id)
@@ -251,7 +272,7 @@ krb5_cc_resolve(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_new_unique(krb5_context context, const char *type,
const char *hint, krb5_ccache *id)
{
@@ -283,7 +304,7 @@ krb5_cc_new_unique(krb5_context context, const char *type,
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_cc_get_name(krb5_context context,
krb5_ccache id)
{
@@ -297,7 +318,7 @@ krb5_cc_get_name(krb5_context context,
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_cc_get_type(krb5_context context,
krb5_ccache id)
{
@@ -317,7 +338,7 @@ krb5_cc_get_type(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_full_name(krb5_context context,
krb5_ccache id,
char **str)
@@ -368,6 +389,7 @@ krb5_cc_get_ops(krb5_context context, krb5_ccache id)
krb5_error_code
_krb5_expand_default_cc_name(krb5_context context, const char *str, char **res)
{
#ifndef KRB5_USE_PATH_TOKENS
size_t tlen, len = 0;
char *tmp, *tmp2, *append;
@@ -385,7 +407,8 @@ _krb5_expand_default_cc_name(krb5_context context, const char *str, char **res)
} else if (tmp) {
tmp2 = strchr(tmp, '}');
if (tmp2 == NULL) {
free(*res);
if (*res)
free(*res);
*res = NULL;
krb5_set_error_message(context, KRB5_CONFIG_BADFORMAT,
"variable missing }");
@@ -396,7 +419,8 @@ _krb5_expand_default_cc_name(krb5_context context, const char *str, char **res)
else if (strncasecmp(tmp, "%{null}", 7) == 0)
append = strdup("");
else {
free(*res);
if (*res)
free(*res);
*res = NULL;
krb5_set_error_message(context,
KRB5_CONFIG_BADFORMAT,
@@ -411,7 +435,8 @@ _krb5_expand_default_cc_name(krb5_context context, const char *str, char **res)
str = NULL;
}
if (append == NULL) {
free(*res);
if (*res)
free(*res);
*res = NULL;
krb5_set_error_message(context, ENOMEM,
N_("malloc: out of memory", ""));
@@ -422,7 +447,8 @@ _krb5_expand_default_cc_name(krb5_context context, const char *str, char **res)
tmp = realloc(*res, len + tlen + 1);
if (tmp == NULL) {
free(append);
free(*res);
if (*res)
free(*res);
*res = NULL;
krb5_set_error_message(context, ENOMEM,
N_("malloc: out of memory", ""));
@@ -434,6 +460,13 @@ _krb5_expand_default_cc_name(krb5_context context, const char *str, char **res)
free(append);
}
return 0;
#else /* _WIN32 */
/* On Windows, we use the more generic _krb5_expand_path_tokens()
function which also handles path tokens in addition to %{uid}
and %{null} */
return _krb5_expand_path_tokens(context, str, res);
#endif
}
/*
@@ -517,7 +550,7 @@ krb5_cc_support_switch(krb5_context context, const char *type)
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_set_default_name(krb5_context context, const char *name)
{
krb5_error_code ret = 0;
@@ -573,6 +606,20 @@ krb5_cc_set_default_name(krb5_context context, const char *name)
return ENOMEM;
}
#ifdef KRB5_USE_PATH_TOKENS
{
char * exp_p = NULL;
if (_krb5_expand_path_tokens(context, p, &exp_p) == 0) {
free (p);
p = exp_p;
} else {
free (p);
return EINVAL;
}
}
#endif
if (context->default_cc_name)
free(context->default_cc_name);
@@ -591,7 +638,7 @@ krb5_cc_set_default_name(krb5_context context, const char *name)
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_cc_default_name(krb5_context context)
{
if (context->default_cc_name == NULL || environment_changed(context))
@@ -609,7 +656,7 @@ krb5_cc_default_name(krb5_context context)
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_default(krb5_context context,
krb5_ccache *id)
{
@@ -631,7 +678,7 @@ krb5_cc_default(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_initialize(krb5_context context,
krb5_ccache id,
krb5_principal primary_principal)
@@ -649,7 +696,7 @@ krb5_cc_initialize(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_destroy(krb5_context context,
krb5_ccache id)
{
@@ -669,7 +716,7 @@ krb5_cc_destroy(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_close(krb5_context context,
krb5_ccache id)
{
@@ -688,7 +735,7 @@ krb5_cc_close(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_store_cred(krb5_context context,
krb5_ccache id,
krb5_creds *creds)
@@ -714,7 +761,7 @@ krb5_cc_store_cred(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_retrieve_cred(krb5_context context,
krb5_ccache id,
krb5_flags whichfields,
@@ -752,7 +799,7 @@ krb5_cc_retrieve_cred(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_principal(krb5_context context,
krb5_ccache id,
krb5_principal *principal)
@@ -770,7 +817,7 @@ krb5_cc_get_principal(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_start_seq_get (krb5_context context,
const krb5_ccache id,
krb5_cc_cursor *cursor)
@@ -788,7 +835,7 @@ krb5_cc_start_seq_get (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_next_cred (krb5_context context,
const krb5_ccache id,
krb5_cc_cursor *cursor,
@@ -804,7 +851,7 @@ krb5_cc_next_cred (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_end_seq_get (krb5_context context,
const krb5_ccache id,
krb5_cc_cursor *cursor)
@@ -819,7 +866,7 @@ krb5_cc_end_seq_get (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_remove_cred(krb5_context context,
krb5_ccache id,
krb5_flags which,
@@ -842,7 +889,7 @@ krb5_cc_remove_cred(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_set_flags(krb5_context context,
krb5_ccache id,
krb5_flags flags)
@@ -856,7 +903,7 @@ krb5_cc_set_flags(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_flags(krb5_context context,
krb5_ccache id,
krb5_flags *flags)
@@ -881,7 +928,7 @@ krb5_cc_get_flags(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_copy_match_f(krb5_context context,
const krb5_ccache from,
krb5_ccache to,
@@ -934,7 +981,7 @@ krb5_cc_copy_match_f(krb5_context context,
* @ingroup @krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_copy_cache(krb5_context context,
const krb5_ccache from,
krb5_ccache to)
@@ -949,7 +996,7 @@ krb5_cc_copy_cache(krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_version(krb5_context context,
const krb5_ccache id)
{
@@ -966,7 +1013,7 @@ krb5_cc_get_version(krb5_context context,
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_cc_clear_mcred(krb5_creds *mcred)
{
memset(mcred, 0, sizeof(*mcred));
@@ -1034,7 +1081,7 @@ struct krb5_cc_cache_cursor_data {
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_cache_get_first (krb5_context context,
const char *type,
krb5_cc_cache_cursor *cursor)
@@ -1092,7 +1139,7 @@ krb5_cc_cache_get_first (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_cache_next (krb5_context context,
krb5_cc_cache_cursor cursor,
krb5_ccache *id)
@@ -1109,7 +1156,7 @@ krb5_cc_cache_next (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_cache_end_seq_get (krb5_context context,
krb5_cc_cache_cursor cursor)
{
@@ -1135,7 +1182,7 @@ krb5_cc_cache_end_seq_get (krb5_context context,
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_cache_match (krb5_context context,
krb5_principal client,
krb5_ccache *id)
@@ -1269,7 +1316,7 @@ build_conf_principals(krb5_context context, krb5_ccache id,
* @ingroup krb5_ccache
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_is_config_principal(krb5_context context,
krb5_const_principal principal)
{
@@ -1297,7 +1344,7 @@ krb5_is_config_principal(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_set_config(krb5_context context, krb5_ccache id,
krb5_const_principal principal,
const char *name, krb5_data *data)
@@ -1345,7 +1392,7 @@ out:
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_config(krb5_context context, krb5_ccache id,
krb5_const_principal principal,
const char *name, krb5_data *data)
@@ -1393,7 +1440,7 @@ struct krb5_cccol_cursor_data {
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cccol_cursor_new(krb5_context context, krb5_cccol_cursor *cursor)
{
*cursor = calloc(1, sizeof(**cursor));
@@ -1425,7 +1472,7 @@ krb5_cccol_cursor_new(krb5_context context, krb5_cccol_cursor *cursor)
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cccol_cursor_next(krb5_context context, krb5_cccol_cursor cursor,
krb5_ccache *cache)
{
@@ -1476,7 +1523,7 @@ krb5_cccol_cursor_next(krb5_context context, krb5_cccol_cursor cursor,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cccol_cursor_free(krb5_context context, krb5_cccol_cursor *cursor)
{
krb5_cccol_cursor c = *cursor;
@@ -1503,7 +1550,7 @@ krb5_cccol_cursor_free(krb5_context context, krb5_cccol_cursor *cursor)
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_last_change_time(krb5_context context,
krb5_ccache id,
krb5_timestamp *mtime)
@@ -1526,7 +1573,7 @@ krb5_cc_last_change_time(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cccol_last_change_time(krb5_context context,
const char *type,
krb5_timestamp *mtime)
@@ -1567,7 +1614,7 @@ krb5_cccol_last_change_time(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_friendly_name(krb5_context context,
krb5_ccache id,
char **name)
@@ -1604,7 +1651,7 @@ krb5_cc_get_friendly_name(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_set_friendly_name(krb5_context context,
krb5_ccache id,
const char *name)
@@ -1632,7 +1679,7 @@ krb5_cc_set_friendly_name(krb5_context context,
* @ingroup krb5_ccache
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_cc_get_lifetime(krb5_context context, krb5_ccache id, time_t *t)
{
krb5_cc_cursor cursor;

View File

@@ -33,7 +33,7 @@
#define KRB5_DEPRECATED
#include <krb5_locl.h>
#include "krb5_locl.h"
#undef __attribute__
#define __attribute__(X)
@@ -684,7 +684,7 @@ find_chpw_proto(const char *name)
* @ingroup @krb5_deprecated
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_change_password (krb5_context context,
krb5_creds *creds,
const char *newpw,
@@ -726,7 +726,7 @@ krb5_change_password (krb5_context context,
* @ingroup @krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_password(krb5_context context,
krb5_creds *creds,
const char *newpw,
@@ -769,7 +769,7 @@ krb5_set_password(krb5_context context,
*
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_password_using_ccache(krb5_context context,
krb5_ccache ccache,
const char *newpw,
@@ -834,7 +834,7 @@ krb5_set_password_using_ccache(krb5_context context,
*
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_passwd_result_to_string (krb5_context context,
int result)
{

View File

@@ -37,7 +37,7 @@
#ifndef HEIMDAL_SMALLER
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_EncTicketPart (krb5_context context,
const void *data,
size_t length,
@@ -48,7 +48,7 @@ krb5_decode_EncTicketPart (krb5_context context,
return decode_EncTicketPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_EncTicketPart (krb5_context context,
void *data,
size_t length,
@@ -59,7 +59,7 @@ krb5_encode_EncTicketPart (krb5_context context,
return encode_EncTicketPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_EncASRepPart (krb5_context context,
const void *data,
size_t length,
@@ -70,7 +70,7 @@ krb5_decode_EncASRepPart (krb5_context context,
return decode_EncASRepPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_EncASRepPart (krb5_context context,
void *data,
size_t length,
@@ -81,7 +81,7 @@ krb5_encode_EncASRepPart (krb5_context context,
return encode_EncASRepPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_EncTGSRepPart (krb5_context context,
const void *data,
size_t length,
@@ -92,7 +92,7 @@ krb5_decode_EncTGSRepPart (krb5_context context,
return decode_EncTGSRepPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_EncTGSRepPart (krb5_context context,
void *data,
size_t length,
@@ -103,7 +103,7 @@ krb5_encode_EncTGSRepPart (krb5_context context,
return encode_EncTGSRepPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_EncAPRepPart (krb5_context context,
const void *data,
size_t length,
@@ -114,7 +114,7 @@ krb5_decode_EncAPRepPart (krb5_context context,
return decode_EncAPRepPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_EncAPRepPart (krb5_context context,
void *data,
size_t length,
@@ -125,7 +125,7 @@ krb5_encode_EncAPRepPart (krb5_context context,
return encode_EncAPRepPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_Authenticator (krb5_context context,
const void *data,
size_t length,
@@ -136,7 +136,7 @@ krb5_decode_Authenticator (krb5_context context,
return decode_Authenticator(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_Authenticator (krb5_context context,
void *data,
size_t length,
@@ -147,7 +147,7 @@ krb5_encode_Authenticator (krb5_context context,
return encode_Authenticator(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_EncKrbCredPart (krb5_context context,
const void *data,
size_t length,
@@ -158,7 +158,7 @@ krb5_decode_EncKrbCredPart (krb5_context context,
return decode_EncKrbCredPart(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_EncKrbCredPart (krb5_context context,
void *data,
size_t length,
@@ -169,7 +169,7 @@ krb5_encode_EncKrbCredPart (krb5_context context,
return encode_EncKrbCredPart (data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_ETYPE_INFO (krb5_context context,
const void *data,
size_t length,
@@ -180,7 +180,7 @@ krb5_decode_ETYPE_INFO (krb5_context context,
return decode_ETYPE_INFO(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_ETYPE_INFO (krb5_context context,
void *data,
size_t length,
@@ -191,7 +191,7 @@ krb5_encode_ETYPE_INFO (krb5_context context,
return encode_ETYPE_INFO (data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_decode_ETYPE_INFO2 (krb5_context context,
const void *data,
size_t length,
@@ -202,7 +202,7 @@ krb5_decode_ETYPE_INFO2 (krb5_context context,
return decode_ETYPE_INFO2(data, length, t, len);
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_encode_ETYPE_INFO2 (krb5_context context,
void *data,
size_t length,

View File

@@ -403,7 +403,7 @@ is_plist_file(const char *fname)
* @ingroup krb5_support
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_config_parse_file_multi (krb5_context context,
const char *fname,
krb5_config_section **res)
@@ -413,6 +413,9 @@ krb5_config_parse_file_multi (krb5_context context,
unsigned lineno = 0;
krb5_error_code ret;
struct fileptr f;
#ifdef KRB5_USE_PATH_TOKENS
char * exp_fname = NULL;
#endif
/**
* If the fname starts with "~/" parse configuration file in the
@@ -483,13 +486,52 @@ krb5_config_parse_file_multi (krb5_context context,
free(newfname);
return ret;
}
=======
#ifdef KRB5_USE_PATH_TOKENS
ret = _krb5_expand_path_tokens(context, fname, &exp_fname);
if (ret)
return ret;
fname = exp_fname;
#endif
f.f = fopen(fname, "r");
f.s = NULL;
if(f.f == NULL) {
ret = errno;
krb5_set_error_message (context, ret, "open %s: %s",
fname, strerror(ret));
if (newfname)
free(newfname);
#ifdef KRB5_USE_PATH_TOKENS
if (exp_fname)
free (exp_fname);
#endif
return ret;
}
ret = krb5_config_parse_debug (&f, res, &lineno, &str);
fclose(f.f);
if (ret) {
krb5_set_error_message (context, ret, "%s:%u: %s", fname, lineno, str);
if (newfname)
free(newfname);
#ifdef KRB5_USE_PATH_TOKENS
if (exp_fname)
free (exp_fname);
#endif
return ret;
>>>>>>> Initial Windows port
}
if (newfname)
free(newfname);
#ifdef KRB5_USE_PATH_TOKENS
if (exp_fname)
free (exp_fname);
#endif
return 0;
}
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_config_parse_file (krb5_context context,
const char *fname,
krb5_config_section **res)
@@ -531,7 +573,7 @@ free_binding (krb5_context context, krb5_config_binding *b)
* @ingroup krb5_support
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_config_file_free (krb5_context context, krb5_config_section *s)
{
free_binding (context, s);
@@ -540,7 +582,7 @@ krb5_config_file_free (krb5_context context, krb5_config_section *s)
#ifndef HEIMDAL_SMALLER
krb5_error_code
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
_krb5_config_copy(krb5_context context,
krb5_config_section *c,
krb5_config_section **head)
@@ -576,7 +618,7 @@ _krb5_config_copy(krb5_context context,
#endif /* HEIMDAL_SMALLER */
const void *
KRB5_LIB_FUNCTION const void * KRB5_LIB_CALL
_krb5_config_get_next (krb5_context context,
const krb5_config_section *c,
const krb5_config_binding **pointer,
@@ -615,7 +657,7 @@ vget_next(krb5_context context,
return NULL;
}
const void *
KRB5_LIB_FUNCTION const void * KRB5_LIB_CALL
_krb5_config_vget_next (krb5_context context,
const krb5_config_section *c,
const krb5_config_binding **pointer,
@@ -651,7 +693,7 @@ _krb5_config_vget_next (krb5_context context,
return NULL;
}
const void *
KRB5_LIB_FUNCTION const void * KRB5_LIB_CALL
_krb5_config_get (krb5_context context,
const krb5_config_section *c,
int type,
@@ -666,6 +708,7 @@ _krb5_config_get (krb5_context context,
return ret;
}
const void *
_krb5_config_vget (krb5_context context,
const krb5_config_section *c,
@@ -689,7 +732,7 @@ _krb5_config_vget (krb5_context context,
* @ingroup krb5_support
*/
const krb5_config_binding *
KRB5_LIB_FUNCTION const krb5_config_binding * KRB5_LIB_CALL
krb5_config_get_list (krb5_context context,
const krb5_config_section *c,
...)
@@ -715,7 +758,7 @@ krb5_config_get_list (krb5_context context,
* @ingroup krb5_support
*/
const krb5_config_binding *
KRB5_LIB_FUNCTION const krb5_config_binding * KRB5_LIB_CALL
krb5_config_vget_list (krb5_context context,
const krb5_config_section *c,
va_list args)
@@ -738,7 +781,7 @@ krb5_config_vget_list (krb5_context context,
* @ingroup krb5_support
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_config_get_string (krb5_context context,
const krb5_config_section *c,
...)
@@ -764,7 +807,7 @@ krb5_config_get_string (krb5_context context,
* @ingroup krb5_support
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_config_vget_string (krb5_context context,
const krb5_config_section *c,
va_list args)
@@ -787,7 +830,7 @@ krb5_config_vget_string (krb5_context context,
* @ingroup krb5_support
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_config_vget_string_default (krb5_context context,
const krb5_config_section *c,
const char *def_value,
@@ -816,7 +859,7 @@ krb5_config_vget_string_default (krb5_context context,
* @ingroup krb5_support
*/
const char* KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const char* KRB5_LIB_CALL
krb5_config_get_string_default (krb5_context context,
const krb5_config_section *c,
const char *def_value,
@@ -844,7 +887,7 @@ krb5_config_get_string_default (krb5_context context,
* @ingroup krb5_support
*/
char ** KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION char ** KRB5_LIB_CALL
krb5_config_vget_strings(krb5_context context,
const krb5_config_section *c,
va_list args)
@@ -904,7 +947,7 @@ cleanup:
* @ingroup krb5_support
*/
char**
KRB5_LIB_FUNCTION char** KRB5_LIB_CALL
krb5_config_get_strings(krb5_context context,
const krb5_config_section *c,
...)
@@ -926,7 +969,7 @@ krb5_config_get_strings(krb5_context context,
* @ingroup krb5_support
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_config_free_strings(char **strings)
{
char **s = strings;
@@ -955,7 +998,7 @@ krb5_config_free_strings(char **strings)
* @ingroup krb5_support
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_config_vget_bool_default (krb5_context context,
const krb5_config_section *c,
krb5_boolean def_value,
@@ -985,7 +1028,7 @@ krb5_config_vget_bool_default (krb5_context context,
* @ingroup krb5_support
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_config_vget_bool (krb5_context context,
const krb5_config_section *c,
va_list args)
@@ -1009,7 +1052,7 @@ krb5_config_vget_bool (krb5_context context,
* @ingroup krb5_support
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_config_get_bool_default (krb5_context context,
const krb5_config_section *c,
krb5_boolean def_value,
@@ -1039,7 +1082,7 @@ krb5_config_get_bool_default (krb5_context context,
* @ingroup krb5_support
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_config_get_bool (krb5_context context,
const krb5_config_section *c,
...)
@@ -1069,7 +1112,7 @@ krb5_config_get_bool (krb5_context context,
* @ingroup krb5_support
*/
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_vget_time_default (krb5_context context,
const krb5_config_section *c,
int def_value,
@@ -1098,10 +1141,10 @@ krb5_config_vget_time_default (krb5_context context,
* @ingroup krb5_support
*/
int KRB5_LIB_FUNCTION
krb5_config_vget_time(krb5_context context,
const krb5_config_section *c,
va_list args)
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_vget_time (krb5_context context,
const krb5_config_section *c,
va_list args)
{
return krb5_config_vget_time_default (context, c, -1, args);
}
@@ -1120,7 +1163,7 @@ krb5_config_vget_time(krb5_context context,
* @ingroup krb5_support
*/
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_get_time_default (krb5_context context,
const krb5_config_section *c,
int def_value,
@@ -1146,7 +1189,7 @@ krb5_config_get_time_default (krb5_context context,
* @ingroup krb5_support
*/
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_get_time (krb5_context context,
const krb5_config_section *c,
...)
@@ -1160,7 +1203,7 @@ krb5_config_get_time (krb5_context context,
}
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_vget_int_default (krb5_context context,
const krb5_config_section *c,
int def_value,
@@ -1181,7 +1224,7 @@ krb5_config_vget_int_default (krb5_context context,
}
}
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_vget_int (krb5_context context,
const krb5_config_section *c,
va_list args)
@@ -1189,7 +1232,7 @@ krb5_config_vget_int (krb5_context context,
return krb5_config_vget_int_default (context, c, -1, args);
}
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_get_int_default (krb5_context context,
const krb5_config_section *c,
int def_value,
@@ -1203,7 +1246,7 @@ krb5_config_get_int_default (krb5_context context,
return ret;
}
int KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION int KRB5_LIB_CALL
krb5_config_get_int (krb5_context context,
const krb5_config_section *c,
...)

View File

@@ -41,8 +41,13 @@ KRB5_LIB_VARIABLE const char *krb5_config_file =
"/Library/Preferences/com.apple.Kerberos.plist:"
"~/Library/Preferences/edu.mit.Kerberos:"
"/Library/Preferences/edu.mit.Kerberos:"
#endif /* __APPLE__ */
SYSCONFDIR "/krb5.conf"
#ifndef _WIN32
":/etc/krb5.conf"
#endif
SYSCONFDIR "/krb5.conf:/etc/krb5.conf";
;
KRB5_LIB_VARIABLE const char *krb5_defkeyname = KEYTAB_DEFAULT;
KRB5_LIB_VARIABLE const char *krb5_cc_type_api = "API";

View File

@@ -275,7 +275,7 @@ kt_ops_register(krb5_context context)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_init_context(krb5_context *context)
{
krb5_context p;
@@ -318,6 +318,11 @@ krb5_init_context(krb5_context *context)
if (ret)
goto out;
#endif
#ifdef NEED_SOCK_INIT
if (SOCK_INIT) {
p->flags |= KRB5_CTX_F_SOCKETS_INITIALIZED;
}
#endif
out:
if(ret) {
@@ -460,7 +465,7 @@ krb5_copy_context(krb5_context context, krb5_context *out)
* @ingroup krb5
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_free_context(krb5_context context)
{
if (context->default_cc_name)
@@ -485,6 +490,11 @@ krb5_free_context(krb5_context context)
HEIMDAL_MUTEX_destroy(context->mutex);
free(context->mutex);
#ifdef NEED_SOCK_INIT
if (context->flags & KRB5_CTX_F_SOCKETS_INITIALIZED) {
SOCK_EXIT;
}
#endif
memset(context, 0, sizeof(*context));
free(context);
@@ -502,7 +512,7 @@ krb5_free_context(krb5_context context)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_config_files(krb5_context context, char **filenames)
{
krb5_error_code ret;
@@ -557,7 +567,7 @@ add_file(char ***pfilenames, int *len, char *file)
* `pq' isn't free, it's up the the caller
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_prepend_config_files(const char *filelist, char **pq, char ***ret_pp)
{
krb5_error_code ret;
@@ -622,7 +632,7 @@ krb5_prepend_config_files(const char *filelist, char **pq, char ***ret_pp)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_prepend_config_files_default(const char *filelist, char ***pfilenames)
{
krb5_error_code ret;
@@ -652,7 +662,7 @@ krb5_prepend_config_files_default(const char *filelist, char ***pfilenames)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_get_default_config_files(char ***pfilenames)
{
const char *files = NULL;
@@ -679,7 +689,7 @@ krb5_get_default_config_files(char ***pfilenames)
* @ingroup krb5
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_free_config_files(char **filenames)
{
char **p;
@@ -701,7 +711,7 @@ krb5_free_config_files(char **filenames)
* @ingroup krb5
*/
const krb5_enctype * KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION const krb5_enctype * KRB5_LIB_CALL
krb5_kerberos_enctypes(krb5_context context)
{
static const krb5_enctype p[] = {
@@ -762,7 +772,7 @@ default_etypes(krb5_context context, krb5_enctype **etype)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_default_in_tkt_etypes(krb5_context context,
const krb5_enctype *etypes)
{
@@ -804,7 +814,7 @@ krb5_set_default_in_tkt_etypes(krb5_context context,
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_get_default_in_tkt_etypes(krb5_context context,
krb5_enctype **etypes)
{
@@ -838,7 +848,7 @@ krb5_get_default_in_tkt_etypes(krb5_context context,
* @ingroup krb5
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_init_ets(krb5_context context)
{
if(context->et_list == NULL){
@@ -873,7 +883,7 @@ krb5_init_ets(krb5_context context)
* @ingroup krb5
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_set_use_admin_kdc (krb5_context context, krb5_boolean flag)
{
context->use_admin_kdc = flag;
@@ -889,7 +899,7 @@ krb5_set_use_admin_kdc (krb5_context context, krb5_boolean flag)
* @ingroup krb5
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_get_use_admin_kdc (krb5_context context)
{
return context->use_admin_kdc;
@@ -908,7 +918,7 @@ krb5_get_use_admin_kdc (krb5_context context)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_add_extra_addresses(krb5_context context, krb5_addresses *addresses)
{
@@ -932,7 +942,7 @@ krb5_add_extra_addresses(krb5_context context, krb5_addresses *addresses)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_extra_addresses(krb5_context context, const krb5_addresses *addresses)
{
if(context->extra_addresses)
@@ -968,7 +978,7 @@ krb5_set_extra_addresses(krb5_context context, const krb5_addresses *addresses)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_get_extra_addresses(krb5_context context, krb5_addresses *addresses)
{
if(context->extra_addresses == NULL) {
@@ -991,7 +1001,7 @@ krb5_get_extra_addresses(krb5_context context, krb5_addresses *addresses)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_add_ignore_addresses(krb5_context context, krb5_addresses *addresses)
{
@@ -1015,7 +1025,7 @@ krb5_add_ignore_addresses(krb5_context context, krb5_addresses *addresses)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_ignore_addresses(krb5_context context, const krb5_addresses *addresses)
{
if(context->ignore_addresses)
@@ -1050,7 +1060,7 @@ krb5_set_ignore_addresses(krb5_context context, const krb5_addresses *addresses)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_get_ignore_addresses(krb5_context context, krb5_addresses *addresses)
{
if(context->ignore_addresses == NULL) {
@@ -1072,7 +1082,7 @@ krb5_get_ignore_addresses(krb5_context context, krb5_addresses *addresses)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_set_fcache_version(krb5_context context, int version)
{
context->fcache_vno = version;
@@ -1091,7 +1101,7 @@ krb5_set_fcache_version(krb5_context context, int version)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_get_fcache_version(krb5_context context, int *version)
{
*version = context->fcache_vno;
@@ -1107,7 +1117,7 @@ krb5_get_fcache_version(krb5_context context, int *version)
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_is_thread_safe(void)
{
#ifdef ENABLE_PTHREAD_SUPPORT
@@ -1126,7 +1136,7 @@ krb5_is_thread_safe(void)
* @ingroup krb5
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_set_dns_canonicalize_hostname (krb5_context context, krb5_boolean flag)
{
if (flag)
@@ -1145,7 +1155,7 @@ krb5_set_dns_canonicalize_hostname (krb5_context context, krb5_boolean flag)
* @ingroup krb5
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_get_dns_canonicalize_hostname (krb5_context context)
{
return (context->flags & KRB5_CTX_F_DNS_CANONICALIZE_HOSTNAME) ? 1 : 0;
@@ -1163,7 +1173,7 @@ krb5_get_dns_canonicalize_hostname (krb5_context context)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_get_kdc_sec_offset (krb5_context context, int32_t *sec, int32_t *usec)
{
if (sec)
@@ -1204,7 +1214,7 @@ krb5_set_kdc_sec_offset (krb5_context context, int32_t sec, int32_t usec)
* @ingroup krb5
*/
time_t KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION time_t KRB5_LIB_CALL
krb5_get_max_time_skew (krb5_context context)
{
return context->max_skew;
@@ -1219,7 +1229,7 @@ krb5_get_max_time_skew (krb5_context context)
* @ingroup krb5
*/
void KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION void KRB5_LIB_CALL
krb5_set_max_time_skew (krb5_context context, time_t t)
{
context->max_skew = t;
@@ -1239,7 +1249,7 @@ krb5_set_max_time_skew (krb5_context context, time_t t)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_init_etype (krb5_context context,
unsigned *len,
krb5_enctype **val,

View File

@@ -58,7 +58,7 @@ check_ticket_flags(TicketFlags f)
* @ingroup krb5_v4compat
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb524_convert_creds_kdc(krb5_context context,
krb5_creds *in_cred,
struct credentials *v4creds)
@@ -160,7 +160,7 @@ out2:
* @ingroup krb5_v4compat
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb524_convert_creds_kdc_ccache(krb5_context context,
krb5_ccache ccache,
krb5_creds *in_cred,

View File

@@ -46,7 +46,7 @@
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_copy_host_realm(krb5_context context,
const krb5_realm *from,
krb5_realm **to)

View File

@@ -45,7 +45,7 @@
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_free_cred_contents (krb5_context context, krb5_creds *c)
{
krb5_free_principal (context, c->client);
@@ -74,7 +74,7 @@ krb5_free_cred_contents (krb5_context context, krb5_creds *c)
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_copy_creds_contents (krb5_context context,
const krb5_creds *incred,
krb5_creds *c)
@@ -131,7 +131,7 @@ fail:
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_copy_creds (krb5_context context,
const krb5_creds *incred,
krb5_creds **outcred)
@@ -161,7 +161,7 @@ krb5_copy_creds (krb5_context context,
* @ingroup krb5
*/
krb5_error_code KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL
krb5_free_creds (krb5_context context, krb5_creds *c)
{
krb5_free_cred_contents (context, c);
@@ -205,7 +205,7 @@ krb5_times_equal(const krb5_times *a, const krb5_times *b)
* @ingroup krb5
*/
krb5_boolean KRB5_LIB_FUNCTION
KRB5_LIB_FUNCTION krb5_boolean KRB5_LIB_CALL
krb5_compare_creds(krb5_context context, krb5_flags whichfields,
const krb5_creds * mcreds, const krb5_creds * creds)
{

Some files were not shown because too many files have changed in this diff Show More