Print this page
Only exploit ipf state keeping for CFW logging.
| Split |
Close |
| Expand all |
| Collapse all |
--- old/usr/src/cmd/ipf/tools/Makefile.tools
+++ new/usr/src/cmd/ipf/tools/Makefile.tools
1 1 #
2 2 # CDDL HEADER START
3 3 #
4 4 # The contents of this file are subject to the terms of the
5 5 # Common Development and Distribution License (the "License").
6 6 # You may not use this file except in compliance with the License.
7 7 #
8 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 9 # or http://www.opensolaris.org/os/licensing.
10 10 # See the License for the specific language governing permissions
11 11 # and limitations under the License.
12 12 #
13 13 # When distributing Covered Code, include this CDDL HEADER in each
14 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 15 # If applicable, add the following below this CDDL HEADER, with the
16 16 # fields enclosed by brackets "[]" replaced with your own identifying
17 17 # information: Portions Copyright [yyyy] [name of copyright owner]
18 18 #
19 19 # CDDL HEADER END
20 20 #
21 21 #
22 22 # Copyright 2009 Sun Microsystems, Inc. All rights reserved.
23 23 # Use is subject to license terms.
24 24 #
25 25 # Copyright 2013 Nexenta Systems, Inc. All rights reserved.
26 26 # Copyright (c) 2012, Joyent Inc. All rights reserved.
27 27 #
|
↓ open down ↓ |
27 lines elided |
↑ open up ↑ |
28 28
29 29 PROG= ipf ipfs ipmon ipnat ippool ipfstat
30 30 IPFPROG= ipftest
31 31
32 32 IPF_OBJS= ipf.o ipfcomp.o ipfzone.o ipf_y.o ipf_l.o
33 33 IPFS_OBJS= ipfs.o ipfzone.o
34 34 IPFSTAT_OBJS= ipfstat.o ipfzone.o
35 35 IPMON_OBJS= ipmon.o ipfzone.o ipmon_y.o ipmon_l.o
36 36 IPNAT_OBJS= ipnat.o ipfzone.o ipnat_y.o ipnat_l.o
37 37 IPPOOL_OBJS= ippool.o ipfzone.o ippool_y.o ippool_l.o
38 -IPFTEST_OBJS= ipftest.o ipfzone.o \
38 +IPFTEST_OBJS= cfw.o ipftest.o ipfzone.o \
39 39 ip_fil.o ip_state.o ip_compat.o \
40 40 ip_frag.o ip_nat.o ip_nat6.o fil.o \
41 41 ip_htable.o ip_lookup.o \
42 42 ip_proxy.o ip_auth.o ip_log.o \
43 43 ipf_y.o ipf_l.o \
44 44 ipnat_y.o ipnat_l.o \
45 45 ippool_y.o ippool_l.o \
46 46 ip_pool.o radix.o
47 47
48 48 OBJS= $(IPF_OBJS) $(IPFS_OBJS) $(IPFSTAT_OBJS) \
49 49 $(IPMON_OBJS) $(IPNAT_OBJS) $(IPPOOL_OBJS) $(IPFTEST_OBJS)
50 50
51 51 OBJSL= $(IPF_OBJS) $(IPFS_OBJS) $(IPFSTAT_OBJS) \
52 52 $(IPMON_OBJS) $(IPNAT_OBJS)
53 53
54 54 SRCS= $(OBJSL:%.o=../%.c)
55 55
56 56 include ../../../Makefile.cmd
57 57 include ../../Makefile.ipf
58 58
59 59 LDLIBS += $(LIBBPF)
60 60 LDFLAGS += $(MAPFILE.NGB:%=-M%)
61 61
62 62 CPPFLAGS += -I. -DIPFILTER_LOOKUP -DIPFILTER_LOG
63 63
64 64 ipfstat.o := CPPFLAGS += -DSTATETOP
65 65 ipfstat := LDLIBS += -lcurses
66 66
67 67 ipf := LDLIBS += -lsocket -lnsl
68 68 ipftest := LDLIBS += -lsocket -lnsl -lmd
69 69 ipfstat := LDLIBS += -lsocket -lnsl -lkvm -lelf
70 70 ipmon := LDLIBS += -lsocket -lnsl
71 71 ipnat := LDLIBS += -lsocket -lnsl -lkvm -lelf
72 72 ippool := LDLIBS += -lsocket -lnsl -lkvm -lelf
73 73
74 74 CLEANFILES += $(OBJS)
75 75 CLOBBERFILES += $(IPFPROG)
76 76
77 77 ROOTIPF= $(ROOTLIB)/ipf
78 78 ROOTIPF32= $(ROOTIPF)/$(MACH32)
79 79 ROOTIPF64= $(ROOTIPF)/$(MACH64)
80 80
81 81 ROOTIPFPROG32= $(IPFPROG:%=$(ROOTIPF32)/%)
82 82 ROOTIPFPROG64= $(IPFPROG:%=$(ROOTIPF64)/%)
83 83
84 84 ROOTIPFLINKS= $(IPFPROG:%=$(ROOTIPF)/%)
85 85 ROOTUSRSBINLINKS= $(PROG:%=$(ROOTUSRSBIN)/%)
86 86
87 87 all:
88 88
89 89 $(ROOTIPF32):
90 90 $(INS.dir)
91 91
92 92 $(ROOTIPF64):
93 93 $(INS.dir)
94 94
95 95 $(ROOTIPF)/%: %
96 96 $(INS.file)
97 97
98 98 $(ROOTIPF32)/%: %
99 99 $(INS.file)
100 100
101 101 $(ROOTIPF64)/%: %
102 102 $(INS.file)
103 103
104 104 $(ROOTUSRSBINLINKS): FRC
105 105 -$(RM) $@; $(LN) $(ISAEXEC) $@
106 106
107 107 $(ROOTIPFLINKS): FRC
108 108 -$(RM) $@; $(LN) $(ISAEXEC) $@
109 109
110 110
111 111 .KEEP_STATE:
112 112
113 113 ipf: $(IPF_OBJS) $(LIBIPF) $(MAPFILE.NGB)
114 114 $(LINK.c) -o ipf $(IPF_OBJS) $(LDLIBS)
115 115 $(POST_PROCESS)
116 116
117 117 ipf_y.o: ../ipf_y.c $(COMMONIPF)/netinet/ip_fil.h $(COMMONIPF)/ipf.h \
118 118 ../ipf_y.c ../ipf_l.h
119 119
120 120 ../ipf_y.c ../ipf_y.h: ../ipf_y.y
121 121 $(YACC) -d -b ipf ../ipf_y.y
122 122 sed -e 's/yy/ipf_yy/g' -e 's/y.tab.h/ipf_y.c/' \
123 123 ipf.tab.c > ../ipf_y.c
124 124 sed -e 's/yy/ipf_yy/g' -e 's/y.tab.h/ipf_y.h/' \
125 125 ipf.tab.h > ../ipf_y.h
126 126
127 127 CLEANFILES += ipf.tab.c ipf.tab.h
128 128 CLEANFILES += ../ipf_y.c ../ipf_y.h
129 129
130 130 ipf_l.o: ../ipf_l.c $(COMMONIPF)/netinet/ip_fil.h $(COMMONIPF)/ipf.h \
131 131 ../ipf_y.h ../ipf_l.h
132 132 $(COMPILE.c) ../ipf_l.c -o $@
133 133
134 134 ../ipf_l.c: ../lexer.c $(COMMONIPF)/ipf.h $(COMMONIPF)/netinet/ip_fil.h
135 135 sed -e 's/yy/ipf_yy/g' -e 's/y.tab.h/ipf_y.h/' \
136 136 -e 's/lexer.h/ipf_l.h/' ../lexer.c > $@
137 137
138 138 ../ipf_l.h: ../lexer.h
139 139 sed -e 's/yy/ipf_yy/g' ../lexer.h > $@
140 140
141 141 CLEANFILES += ../ipf_l.c ../ipf_l.h
142 142
143 143
144 144 ipfs: $(IPFS_OBJS)
145 145 $(LINK.c) -o ipfs $(IPFS_OBJS) $(LDLIBS)
146 146 $(POST_PROCESS)
147 147
148 148 ipfstat: $(IPFSTAT_OBJS) $(MAPFILE.NGB)
149 149 $(LINK.c) -o ipfstat $(IPFSTAT_OBJS) $(LDLIBS)
150 150 $(POST_PROCESS)
151 151
152 152 ipmon: $(IPMON_OBJS) $(LIBIPF) $(MAPFILE.NGB)
153 153 $(LINK.c) -o ipmon $(IPMON_OBJS) $(LDLIBS)
154 154 $(POST_PROCESS)
155 155
156 156 ipmon_y.o: ../ipmon_y.c $(COMMONIPF)/ipmon.h \
157 157 ../ipmon_y.h ../ipmon_l.h
158 158
159 159 ../ipmon_y.c ../ipmon_y.h: ../ipmon_y.y
160 160 $(YACC) -d -b ipmon ../ipmon_y.y
161 161 sed -e 's/yy/ipmon_yy/g' \
162 162 -e 's/extern [a-z]* .*();//' \
163 163 -e 's/^\(static [a-z]* .*\)();/\1(void);/' \
164 164 ipmon.tab.c > ../ipmon_y.c
165 165 sed -e 's/yy/ipmon_yy/g' -e 's/y.tab.h/ipmon_y.h/' \
166 166 ipmon.tab.h > ../ipmon_y.h
167 167
168 168 CLEANFILES += ipmon.tab.c ipmon.tab.h
169 169 CLEANFILES += ../ipmon_y.c ../ipmon_y.h
170 170
171 171 ipmon_l.o: ../ipmon_l.c $(COMMONIPF)/ipmon.h ../ipmon_y.h ../ipmon_l.h
172 172 $(COMPILE.c) ../ipmon_l.c -o $@
173 173
174 174 ../ipmon_l.c: ../lexer.c $(COMMONIPF)/ipmon.h
175 175 sed -e 's/yy/ipmon_yy/g' -e 's/y.tab.h/ipmon_y.h/' \
176 176 -e 's/lexer.h/ipmon_l.h/' ../lexer.c > $@
177 177
178 178 ../ipmon_l.h: ../lexer.h
179 179 sed -e 's/yy/ipmon_yy/g' ../lexer.h > $@
180 180
181 181 CLEANFILES += ../ipmon_l.c ../ipmon_l.h
182 182
183 183 ipnat: $(IPNAT_OBJS) $(LIBIPF) $(MAPFILE.NGB)
184 184 $(LINK.c) -o ipnat $(IPNAT_OBJS) $(LDLIBS)
185 185 $(POST_PROCESS)
186 186
187 187 ipnat_y.o: ../ipnat_y.c $(COMMONIPF)/netinet/ip_nat.h \
188 188 ../ipnat_y.h ../ipnat_l.h
189 189
190 190 ../ipnat_y.c ../ipnat_y.h: ../ipnat_y.y
191 191 $(YACC) -d -b ipnat ../ipnat_y.y
192 192 sed -e 's/yy/ipnat_yy/g' \
193 193 -e 's/extern [a-z]* .*();//' \
194 194 -e 's/^\(static [a-z]* .*\)();/\1(void);/' \
195 195 ipnat.tab.c > ../ipnat_y.c
196 196 sed -e 's/yy/ipnat_yy/g' -e 's/y.tab.h/ipnat_y.h/' \
197 197 ipnat.tab.h > ../ipnat_y.h
198 198
199 199 CLEANFILES += ipnat.tab.c ipnat.tab.h
200 200 CLEANFILES += ../ipnat_y.c ../ipnat_y.h
201 201
202 202 ipnat_l.o: ../ipnat_l.c $(COMMONIPF)/netinet/ip_nat.h ../ipnat_l.h
203 203 $(COMPILE.c) ../ipnat_l.c -o $@
204 204
205 205 ../ipnat_l.c: ../lexer.c $(COMMONIPF)/netinet/ip_nat.h
206 206 sed -e 's/yy/ipnat_yy/g' -e 's/y.tab.h/ipnat_y.h/' \
207 207 -e 's/lexer.h/ipnat_l.h/' ../lexer.c > $@
208 208
209 209 ../ipnat_l.h: ../lexer.h
210 210 sed -e 's/yy/ipnat_yy/g' ../lexer.h > $@
211 211
212 212 CLEANFILES += ../ipnat_l.c ../ipnat_l.h
213 213
214 214 ippool: $(IPPOOL_OBJS) $(LIBIPF) $(MAPFILE.NGB)
215 215 $(LINK.c) -o ippool $(IPPOOL_OBJS) $(LDLIBS)
216 216 $(POST_PROCESS)
217 217
218 218 ippool_y.o: ../ippool_y.c $(COMMONIPF)/netinet/ip_pool.h \
219 219 ../ippool_y.h ../ippool_l.h
220 220
221 221 ../ippool_y.c ../ippool_y.h: ../ippool_y.y
222 222 $(YACC) -d -b ippool ../ippool_y.y
223 223 sed -e 's/yy/ippool_yy/g' \
224 224 -e 's/extern [a-z]* .*();//' \
225 225 -e 's/^\(static [a-z]* .*\)();/\1(void);/' \
226 226 ippool.tab.c > ../ippool_y.c
227 227 sed -e 's/yy/ippool_yy/g' -e 's/y.tab.h/ippool_y.h/' \
228 228 ippool.tab.h > ../ippool_y.h
229 229
230 230 CLEANFILES += ippool.tab.c ippool.tab.h
231 231 CLEANFILES += ../ippool_y.c ../ippool_y.h
232 232
233 233 ippool_l.o: ../ippool_l.c $(COMMONIPF)/netinet/ip_pool.h ../ippool_l.h
234 234 $(COMPILE.c) ../ippool_l.c -o $@
235 235
236 236 ../ippool_l.c: ../lexer.c $(COMMONIPF)/netinet/ip_pool.h
237 237 sed -e 's/yy/ippool_yy/g' -e 's/y.tab.h/ippool_y.h/' \
238 238 -e 's/lexer.h/ippool_l.h/' ../lexer.c > $@
239 239
240 240 ../ippool_l.h: ../lexer.h
241 241 sed -e 's/yy/ippool_yy/g' ../lexer.h > $@
242 242
243 243 CLEANFILES += ../ippool_l.c ../ippool_l.h
244 244
245 245 ipftest: $(IPFTEST_OBJS) $(LIBIPF) $(MAPFILE.NGB)
246 246 $(LINK.c) $(ZIGNORE) -o ipftest $(IPFTEST_OBJS) $(LDLIBS)
247 247 $(POST_PROCESS)
248 248
249 249 clean:
250 250 -$(RM) $(CLEANFILES)
251 251
252 252 lint: lint_SRCS
253 253
254 254 #
255 255 # NOTE: all rules must use relative paths otherwise absolute paths will be
256 256 # embedded into the binaries making them false positives and
257 257 # reported by wsdiff
258 258 #
259 259
260 260 %.o: ../../../../uts/common/inet/ipf/%.c
261 261 $(COMPILE.c) $<
262 262
263 263 %.o: ../%.c
264 264 $(COMPILE.c) $<
265 265
266 266 %.o: ../../../../common/net/patricia/%.c
267 267 $(COMPILE.c) $<
268 268
269 269 include ../../../Makefile.targ
270 270
271 271 FRC:
|
↓ open down ↓ |
223 lines elided |
↑ open up ↑ |
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX