]> git.karo-electronics.de Git - karo-tx-redboot.git/blob - packages/net/ppp/v2_0/cdl/ppp.cdl
6b2ba5ccbfa96a45037e2bd86e42017950616d3f
[karo-tx-redboot.git] / packages / net / ppp / v2_0 / cdl / ppp.cdl
1 # ====================================================================
2 #
3 #      ppp.cdl
4 #
5 #      PPP configuration data
6 #
7 # ====================================================================
8 #####ECOSGPLCOPYRIGHTBEGIN####
9 ## -------------------------------------------
10 ## This file is part of eCos, the Embedded Configurable Operating System.
11 ## Copyright (C) 2003, 2004 eCosCentric Limited
12 ##
13 ## eCos is free software; you can redistribute it and/or modify it under
14 ## the terms of the GNU General Public License as published by the Free
15 ## Software Foundation; either version 2 or (at your option) any later version.
16 ##
17 ## eCos is distributed in the hope that it will be useful, but WITHOUT ANY
18 ## WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 ## FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
20 ## for more details.
21 ##
22 ## You should have received a copy of the GNU General Public License along
23 ## with eCos; if not, write to the Free Software Foundation, Inc.,
24 ## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
25 ##
26 ## As a special exception, if other files instantiate templates or use macros
27 ## or inline functions from this file, or you compile this file and link it
28 ## with other works to produce a work based on this file, this file does not
29 ## by itself cause the resulting work to be covered by the GNU General Public
30 ## License. However the source code for this file must still be made available
31 ## in accordance with section (3) of the GNU General Public License.
32 ##
33 ## This exception does not invalidate any other reasons why a work based on
34 ## this file might be covered by the GNU General Public License.
35 ##
36 ## -------------------------------------------
37 #####ECOSGPLCOPYRIGHTEND####
38 # ====================================================================
39 ######DESCRIPTIONBEGIN####
40 #
41 # Author(s):      nickg
42 # Original data:  nickg
43 # Contributors:   
44 # Date:           2002-10-15
45 #
46 #####DESCRIPTIONEND####
47 #
48 # ====================================================================
49
50 cdl_package CYGPKG_PPP {
51     display       "PPP daemon"
52     parent        CYGPKG_NET
53     doc           ref/net-ppp.html
54     include_dir   cyg/ppp
55     requires      CYGPKG_IO
56     requires      CYGPKG_IO_SERIAL
57
58     requires      CYGPKG_IO_SERIAL_DEVICES
59     requires      CYGOPT_IO_SERIAL_SUPPORT_NONBLOCKING
60     requires      CYGPKG_NET
61     requires      CYGPKG_IO_SERIAL_FLOW_CONTROL
62     
63     description "PPP support for eCos. This package contains the PPP
64                  daemon functionality, BSD kernel device drivers for
65                  the network stack, plus other parts of the PPP
66                  infrastructure."
67
68     compile pppd.c sys-ecos.c ppp_io.c
69     compile auth.c ccp.c fsm.c magic.c
70     compile cbcp.c ipcp.c lcp.c 
71
72     compile if_ppp.c slcompress.c
73
74     cdl_option CYGNUM_PPP_PPPD_THREAD_PRIORITY {
75         display "PPP thread priority"
76         flavor data
77         default_value { CYGNUM_KERNEL_SCHED_PRIORITIES/2 }
78         legal_values 0 to CYGNUM_KERNEL_SCHED_PRIORITIES
79         description "The PPP system contains two threads, One is used for receiving
80                      data from the link and processing control packets.
81                      The other is used to transmit data asynchronously to the link
82                      when it cannot be completed synchronously. The receive thread
83                      runs at the priority given here, and the transmit thread
84                      runs at the next lower priority.
85                      The exact priority needed here depends on the importance of the
86                      PPP subsystem relative to the rest of the system. The default
87                      is to put it in the middle of the priority range to provide
88                      reasonable response without impacting genuine high
89                      priority threads."
90     }
91
92     cdl_component CYGPKG_PPP_DEBUG_WARN_ONLY {
93         display   "PPP protocol debug error only"
94         default_value 1
95         description "The runtime debug option enables logging of high
96                      level debug messages. Too many of these can interfere
97                      with the PPP device and may result in missed messages.
98                      This is because these messages are emitted via the diag_printf()
99                      mechanism, which disables interrupts while it prints.
100                      By default, therefore, we only report errors and warnings, and not
101                      all events. Setting this option to zero will enable the logging of
102                      all events."
103     }
104     
105     cdl_component CYGPKG_PPP_AUTH {
106         display "PPP authentication defaults"
107         flavor none
108         no_define
109         
110         cdl_option CYGPKG_PPP_AUTH_DEFAULT_USER {
111             display "Default user name"
112             flavor data
113             default_value {"\"eCos\""}
114             description "This option gives the default value
115                          for the user name used to intialize
116                          the user field in the PPP options."
117         }
118
119         cdl_option CYGPKG_PPP_AUTH_DEFAULT_PASSWD {
120             display "Default password"
121             flavor data
122             default_value {"\"secret\""}
123             description "This option gives the default value
124                          for the password used to intialize
125                          the passwd field in the PPP options."
126         }
127         
128     }
129
130     cdl_option CYGPKG_PPP_DEFAULT_DIALUP_NUMBER {
131         display "Default dialup number"
132         flavor data
133         default_value { "\"5551234\""}
134         description "This option provides a default dialup number for use in
135                      chat scripts. This value is not used anywhere
136                      in the PPP package, but is provided to complete the information
137                      needed, alongside the user name and password, for accessing a
138                      typical dialup server."
139     }
140     
141     cdl_component CYGPKG_PPP_PAP {
142         display "PAP support"
143         default_value 1
144         description "This component enables the inclusion of PAP authentication
145                      support."
146         compile upap.c
147
148     }
149
150     cdl_component CYGPKG_PPP_CHAP {
151         display "CHAP support"
152         default_value 1
153         description "This component enables the inclusion of CHAP authentication
154                      support."
155
156         compile chap.c chap_ms.c
157
158     }
159
160     cdl_component CYGPKG_PPP_COMPRESSION {
161         display "PPP compression options"
162         default_value 0
163         description "This component provides control over
164                      PPP compression features. WARNING: at
165                      present there are problems with BSD and ZLIB,
166                      and the compression code needs to allocate large
167                      amounts of memory. Hence this is all currently
168                      disabled."
169         
170         cdl_option PPP_BSDCOMP {
171             display "Enable BSD compression"
172             default_value 0
173             compile bsd_comp.c 
174             description "This option enables inclusion of BSD
175                          compression into the PPP protocol."
176         }
177
178         cdl_option PPP_DEFLATE {
179             display "Enable ZLIB compression"
180             default_value 0
181             compile ppp_deflate.c zlib.c
182             description "This option enables inclusion of ZLIB
183                          compression into the PPP protocol."
184         }
185         
186         cdl_option PPP_INHIBIT_OLD_VJ_COMPRESSION {
187                         display                 "Inhibit older-style VJ compression"
188                         flavor                  bool
189                         default_value   0
190                         description             "This option prevents the IPCP state machine
191                                          from negotiating the pre-RFC1332 Van Jacobson 
192                                          compression.  Checking this option could
193                                          improve IPCP negotiation time at the expense
194                                          of compatibility."
195                 }            
196     }
197
198     cdl_component CYGPKG_PPP_CHAT {
199         display "Chat script support"
200         default_value 1
201         description "This component enables the inclusion of a
202                      simple scripting system to bring up PPP connections.
203                      It implements a subset of the CHAT scripting language."
204
205         compile chat.c
206         
207         cdl_option CYGNUM_PPP_CHAT_ABORTS_MAX {
208             display "Maximum number of ABORT strings"
209             flavor data
210             default_value 10
211             legal_values 5 to 500
212             description "This option defines the maximum number of ABORT
213                          strings that the CHAT system will store."
214         }
215
216         cdl_option CYGNUM_PPP_CHAT_ABORTS_SIZE {
217             display "Maximum size of each ABORT string"
218             flavor data
219             default_value 20
220             legal_values 10 to 100
221             description "This option defines the maximum size of each ABORT
222                          strings that the CHAT system will store."
223         }
224
225         cdl_option CYGNUM_PPP_CHAT_STRING_LENGTH {
226             display "Maximum size of CHAT strings"
227             flavor data
228             default_value 256
229             legal_values 32 to 32768
230             description "This option defines the maximum size of any
231                          expect or reply strings that the CHAT system
232                          will be given."
233         }
234         
235     }
236
237     cdl_component CYGPKG_PPP_WORKAROUNDS {
238         display "PPP workarounds for bugs in other implementations"
239         flavor  none
240         no_define
241
242         cdl_option CYGPKT_PPP_WORKAROUNDS_START_FLAG {
243         flavor bool
244         default_value false
245         description "This option enables a workaround to add a start
246                      flag to every packet. The RFC does not require this,
247                      but some broken PPP implementations seems to need it."
248         }
249     }
250
251     cdl_component CYGPKG_PPP_NEGOTIATE_OPTIONS {
252         display "PPP negotiation options"
253         flavor none
254         no_define
255         
256         cdl_option CYGOPT_PPP_NS_NEGOTIATE {
257             display "Name server support"
258             default_value CYGINT_ISO_DNS
259             flavor bool
260             description "
261                 This option allows negotiation of the domain
262                 name server IPCP extensions as defined in 
263                 RFC 1877"
264         }
265         cdl_option CYGOPT_PPP_DNS_CONFIGURE {
266         display       "Allow the PPP code to configure the resolver"
267         default_value 1
268         description   "
269             The PPP code can negotionate with the peer what the 
270             recommended DNS server is. This option causes the PPP 
271             code to then configure the DNS resolver with the address
272             of the discovered server."
273        }
274     }    
275
276     cdl_component CYGPKG_PPP_OPTIONS {
277         display "PPP build options"
278         flavor  none
279         no_define
280
281         cdl_option CYGPKG_PPP_CFLAGS_ADD {
282             display "Additional compiler flags"
283             flavor  data
284             no_define
285             default_value { "-D__ECOS" }
286             description   "
287                 This option modifies the set of compiler flags for
288                 building the PPP package.
289                 These flags are used in addition
290                 to the set of global flags."
291         }
292
293         cdl_option CYGPKG_PPP_CFLAGS_REMOVE {
294             display "Suppressed compiler flags"
295             flavor  data
296             no_define
297             default_value { "" }
298             description   "
299                 This option modifies the set of compiler flags for
300                 building the PPP package. These flags are removed from
301                 the set of global flags if present."
302         }
303     }
304
305     cdl_option CYGPKG_PPP_TESTS {
306         display "PPP tests"
307         flavor  data
308         no_define
309         calculated { "tests/ppp_up "         .
310                      "tests/ppp_updown "     .
311                      "tests/chat "           .
312                      "tests/ppp_auth "       .
313                      ((CYGPKG_PPP_TESTS_ALL) ?
314                       "tests/isp "           .
315                       "tests/tcp_echo "      .
316                       "tests/nc_test_slave "
317                      :
318                       "" )
319                    }
320             description   "
321              This option specifies the set of tests
322              for the PPP package."
323         }
324
325     cdl_option CYGPKG_PPP_TESTS_ALL {
326         display "Include all PPP tests"
327         default_value 0
328         description "This option enables the inclusion of extra PPP tests
329                      that are not normally suitable for automated testing."
330     }
331     
332     cdl_option CYGPKG_PPP_TEST_DEVICE {
333         display "PPP test device"
334         flavor data
335         default_value { "\"/dev/ser0\"" }
336         description "This is the name of the device used by the PPP tests
337                      to make the PPP connection."
338     }
339
340     cdl_component CYGPKG_PPP_TESTS_AUTOMATE {
341         display "PPP test automation"
342         default_value 1
343         description "This component controls the automation of PPP tests using the
344                      test_server.sh script to control the remote end. Without this
345                      option, PPP tests are configured to run stand-alone. With this
346                      option they emit control strings to change the line baud rate
347                      and announce the test being performed."
348
349         cdl_option CYGDAT_PPP_TEST_BAUD_RATES {
350             display "PPP test automation baud rates"
351             flavor data
352             default_value { "CYGNUM_SERIAL_BAUD_19200," .
353                             "CYGNUM_SERIAL_BAUD_38400," .
354                             "CYGNUM_SERIAL_BAUD_57600," .
355                             "CYGNUM_SERIAL_BAUD_115200"
356                           }
357             description "This option gives the set of baud rates for which some
358                          tests will execute."
359         }
360     }
361         cdl_option CYGBLD_PPP_WINDOWS_TELNET_APP {
362             display  "Build complete eCos PPP client interfacing to Windows PPP server"
363             default_value 0
364             make -priority 320 {
365                 <PREFIX>/bin/windows_telnet.elf : $(PREFIX)/lib/target.ld $(PREFIX)/lib/vectors.o $(PREFIX)/lib/libtarget.a $(PREFIX)/lib/libextras.a $(REPOSITORY)/$(PACKAGE)/tests/windows_telnet.c
366                         @sh -c "mkdir -p $(dir $@)"
367                         $(CC) -c $(INCLUDE_PATH) $(CFLAGS) -o $(PREFIX)/lib/windows_telnet.o $(REPOSITORY)/$(PACKAGE)/tests/windows_telnet.c
368                         $(CC) $(LDFLAGS) -L$(PREFIX)/lib -Ttarget.ld -o $@ $(PREFIX)/lib/windows_telnet.o
369                         $(OBJCOPY) -O binary $@ $(PREFIX)/bin/windows_telnet.bin                        
370             }
371             
372         }
373
374 }
375
376 # EOF ppp.cdl