libtommath: Fix possible integer overflow CVE-2023-36328
[heimdal.git] / kdc / NTMakefile
blobaca65b104ae89337e7a8c89ab59018062d0ed9c8
1 ########################################################################
3 # Copyright (c) 2009-2016, Secure Endpoints Inc.
4 # All rights reserved.
5
6 # Redistribution and use in source and binary forms, with or without
7 # modification, are permitted provided that the following conditions
8 # are met:
9
10 # - Redistributions of source code must retain the above copyright
11 #   notice, this list of conditions and the following disclaimer.
12
13 # - Redistributions in binary form must reproduce the above copyright
14 #   notice, this list of conditions and the following disclaimer in
15 #   the documentation and/or other materials provided with the
16 #   distribution.
17
18 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19 # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20 # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
21 # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
22 # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
23 # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
24 # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
26 # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
28 # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 # POSSIBILITY OF SUCH DAMAGE.
30
32 RELDIR=kdc 
34 !include ../windows/NTMakefile.w32 
36 intcflags=-I$(OBJ) -I$(SRC)\lib\gssapi -I$(OBJDIR)\lib\gssapi -I$(OBJDIR)\lib\gss_preauth -DBUILD_KDC_LIB
38 BINPROGRAMS=$(BINDIR)\string2key.exe
40 SBINPROGRAMS=$(SBINDIR)\kstash.exe
42 LIBEXECPROGRAMS= \
43         $(LIBEXECDIR)\hprop.exe \
44         $(LIBEXECDIR)\hpropd.exe \
45         $(LIBEXECDIR)\kdc.exe \
46 #       $(LIBEXECDIR)\digest-service.exe
48 NOINST_PROGRAMS=$(OBJ)\kdc-replay.exe
50 INCFILES=\
51         $(INCDIR)\kdc.h         \
52         $(INCDIR)\kdc-protos.h  \
53         $(INCDIR)\kdc-private.h \
54         $(INCDIR)\krb5\kdc-audit.h \
55         $(INCDIR)\krb5\kdc-plugin.h \
56         $(INCDIR)\krb5\kdc-accessors.h
58 all:: $(INCFILES) $(LIBKDC) $(BINPROGRAMS) $(SBINPROGRAMS) $(LIBEXECPROGRAMS)
60 clean::
61         -$(RM) $(LIBKDC)
62         -$(RM) $(BINPROGRAMS:.exe=.*) $(SBINPROGRAMS:.exe=.*) $(LIBEXECPROGRAMS:.exe=.*)
64 BIN_LIBS=\
65         $(LIBHDB)       \
66         $(LIBHEIMDAL)   \
67         $(LIBROKEN)     \
68         $(LIBVERS)
70 $(LIBEXECDIR)\hprop.exe: $(OBJ)\hprop.obj $(OBJ)\mit_dump.obj $(BIN_LIBS) $(OBJ)\hprop-version.res
71         $(EXECONLINK)
72         $(EXEPREP)
74 $(LIBEXECDIR)\hpropd.exe: $(OBJ)\hpropd.obj $(BIN_LIBS) $(OBJ)\hpropd-version.res
75         $(EXECONLINK)
76         $(EXEPREP)
78 $(SBINDIR)\kstash.exe: $(OBJ)\kstash.obj $(BIN_LIBS) $(OBJ)\kstash-version.res
79         $(EXECONLINK)
80         $(EXEPREP)
82 $(BINDIR)\string2key.exe: $(OBJ)\string2key.obj $(BIN_LIBS) $(OBJ)\string2key-version.res
83         $(EXECONLINK)
84         $(EXEPREP)
86 $(BINDIR)\digest-service.exe: $(OBJ)\digest-service.obj $(BIN_LIBS)
87         $(EXECONLINK)
88         $(EXEPREP)
90 $(LIBEXECDIR)\kdc.exe: \
91                 $(OBJ)\connect.obj $(OBJ)\config.obj $(OBJ)\announce.obj \
92                 $(OBJ)\main.obj $(OBJ)\kdc-version.res \
93                 $(LIBKDC) $(BIN_LIBS) $(LIB_openssl_crypto)
94         $(EXECONLINK)
95         $(EXEPREP)
97 LIBKDC_OBJS=\
98         $(OBJ)\default_config.obj       \
99         $(OBJ)\ca.obj                   \
100         $(OBJ)\kx509.obj                \
101         $(OBJ)\set_dbinfo.obj           \
102         $(OBJ)\digest.obj               \
103         $(OBJ)\fast.obj                 \
104         $(OBJ)\kerberos5.obj            \
105         $(OBJ)\krb5tgs.obj              \
106         $(OBJ)\pkinit.obj               \
107         $(OBJ)\pkinit-ec.obj            \
108         $(OBJ)\mssfu.obj                        \
109         $(OBJ)\log.obj                  \
110         $(OBJ)\misc.obj                 \
111         $(OBJ)\kx509.obj                \
112         $(OBJ)\token_validator.obj      \
113         $(OBJ)\csr_authorizer.obj       \
114         $(OBJ)\process.obj              \
115         $(OBJ)\kdc-plugin.obj           \
116         $(OBJ)\gss_preauth.obj
118 LIBKDC_LIBS=\
119         $(LIBHDB)               \
120         $(LIBGSS_PREAUTH)       \
121         $(LIBGSSAPI)            \
122         $(LIBHEIMBASE)          \
123         $(LIBHEIMDAL)           \
124         $(LIBHEIMNTLM)          \
125         $(LIB_openssl_crypto)   \
126         $(LIBROKEN)
128 LIBKDCRES=$(OBJ)\libkdc-version.res
130 $(LIBEXECDIR)\libkdc.dll: $(LIBKDC_OBJS) $(LIBKDC_LIBS) $(LIBKDCRES)
131         $(DLLGUILINK) -implib:$(LIBKDC) -def:libkdc-exports.def
132         $(DLLPREP_NODIST)
134 $(LIBKDC): $(LIBEXECDIR)\libkdc.dll
136 clean::
137         -$(RM) $(LIBEXECDIR)\libkdc.*
139 libkdc_la_SOURCES =             \
140         default_config.c        \
141         ca.c                    \
142         set_dbinfo.c            \
143         digest.c                \
144         fast.c                  \
145         kdc_locl.h              \
146         kerberos5.c             \
147         krb5tgs.c               \
148         pkinit.c                \
149         pkinit-ec.c             \
150         mssfu.c                 \
151         log.c                   \
152         misc.c                  \
153         kx509.c                 \
154         token_validator.c       \
155         csr_authorizer.c        \
156         process.c               \
157         kdc-plugin.c            \
158         gss_preauth.c
160 $(OBJ)\kdc-protos.h: $(libkdc_la_SOURCES)
161         cd $(SRCDIR)
162         $(PERL) ..\cf\make-proto.pl -E KDC_LIB -q -P remove -o $@ $(libkdc_la_SOURCES) \
163         || $(RM) $@
165 $(OBJ)\kdc-private.h: $(libkdc_la_SOURCES)
166         $(PERL) ..\cf\make-proto.pl -q -P remove -p $@ $(libkdc_la_SOURCES) \
167         || $(RM) $@