Linux debugging

Check our new training course

Linux debugging, tracing, profiling & perf. analysis

Check our new training course
with Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
#
# For a description of the syntax of this configuration file,
# see scripts/kbuild/config-language.txt.
#

menu "Networking Utilities"

config CONFIG_FEATURE_IPV6
	bool "Enable IPv6 support"
	default n
	help
	  Enable IPv6 support to busybox. This makes applets that talk IP
	  able to work with IPv6.

config CONFIG_ARPING
	bool "arping"
	default n
	help
	  Ping hosts by ARP packets

config CONFIG_FTPGET
	bool "ftpget"
	default n
	help
	  Retrieve a remote file via FTP.

config CONFIG_FTPPUT
	bool "ftpput"
	default n
	help
	  Store a remote file via FTP.

config CONFIG_HOSTNAME
	bool "hostname"
	default n
	help
	  Show or set the system's host name

config CONFIG_HTTPD
	bool "httpd"
	default n
	help
	  Serve web pages via an HTTP server.

config CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
	bool "  Support using httpd only from inetd"
	default n
	depends on CONFIG_HTTPD
	help
	  This option disables uid and port options for the httpd applet
	  but requires inetd server daemon.

config CONFIG_FEATURE_HTTPD_BASIC_AUTH
	bool "  Enable Basic http Authentication"
	default y
	depends on CONFIG_HTTPD
	help
	  Utilizes password settings from /etc/httpd.conf for basic
	  authentication on a per url basis.

config CONFIG_FEATURE_HTTPD_AUTH_MD5
	bool "  Support MD5 crypted passwords for http Authentication"
	default n
	depends on CONFIG_FEATURE_HTTPD_BASIC_AUTH
	help
	  Enables basic per url authentication from /etc/httpd.conf
	  using md5 passwords.


if !CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
config CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
	bool "  Support reloading the global config file using hup signal"
	default n
	depends on CONFIG_HTTPD
	help
	  This option enables processing of SIGHUP to reload cached
	  configuration settings.

config CONFIG_FEATURE_HTTPD_SETUID
	bool "  Enable support -u <user> option"
	default n
	depends on CONFIG_HTTPD
	help
	  This option allows the server to run as a specific user
	  rather than defaulting to the user that starts the server.
	  Use of this option requires special privileges to change to a
	  different user.
endif

config CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
	bool "  Support loading additional MIME types at run-time"
	default n
	depends on CONFIG_HTTPD
	help
	  This option enables support for additional MIME types at
	  run-time to be specified in the configuration file.

config CONFIG_FEATURE_HTTPD_CGI
	bool "  Support Common Gateway Interface (CGI)"
	default y
	depends on CONFIG_HTTPD
	help
	  This option allows scripts and executables to be invoked
  	  when specific urls are requested.

config CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
	bool "  Support the REMOTE_PORT environment variable for CGI"
	default n
	depends on CONFIG_FEATURE_HTTPD_CGI
	help
	  Use of this option can assist scripts in generating
	  references that contain a unique port number.

config CONFIG_FEATURE_HTTPD_ENCODE_URL_STR
	bool "  Enable the -e option for shell script CGI simplification."
	default y
	depends on CONFIG_HTTPD
	help
	  After set, this option allows html encoding arbitrary
	  strings for display of the browser.  Output goes to stdout.
	  For example, httpd -e "<Hello World>" as
	  "&#60Hello&#32World&#62".

config CONFIG_IFCONFIG
	bool "ifconfig"
	default n
	help
	  Ifconfig is used to configure the kernel-resident network interfaces.

config CONFIG_FEATURE_IFCONFIG_STATUS
	bool "  Enable status reporting output (+7k)"
	default y
	depends on CONFIG_IFCONFIG
	help
	  If ifconfig is called with no arguments it will display the status
	  of the currently active interfaces.

config CONFIG_FEATURE_IFCONFIG_SLIP
	bool "  Enable slip-specific options \"keepalive\" and \"outfill\""
	default n
	depends on CONFIG_IFCONFIG
	help
	  Allow "keepalive" and "outfill" support for SLIP.  If you're not
	  planning on using serial lines, leave this unchecked.

config CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
	bool "  Enable options \"mem_start\", \"io_addr\", and \"irq\""
	default n
	depends on CONFIG_IFCONFIG
	help
	  Allow the start address for shared memory, start address for I/O,
	  and/or the interrupt line used by the specified device.

config CONFIG_FEATURE_IFCONFIG_HW
	bool "  Enable option \"hw\" (ether only)"
	default y
	depends on CONFIG_IFCONFIG
	help
	  Set the hardware address of this interface, if the device driver
	  supports  this  operation.  Currently, we only support the 'ether'
	  class.

config CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS
	bool "  Set the broadcast automatically"
	default n
	depends on CONFIG_IFCONFIG
	help
	  Setting this will make ifconfig attempt to find the broadcast
	  automatically if the value '+' is used.

config CONFIG_IFUPDOWN
	bool "ifupdown"
	default n
	help
	  Activate or deactivate the specified interfaces.  This applet makes
	  use of either "ifconfig" and "route" or the "ip" command to actually
	  configure network interfaces.  Therefore, you will probably also want
	  to enable either CONFIG_IFCONFIG and CONFIG_ROUTE, or enable
	  CONFIG_FEATURE_IFUPDOWN_IP and the various CONFIG_IP options.  Of
	  course you could use non-busybox versions of these programs, so
	  against my better judgement (since this will surely result in plenty
	  of support questions on the mailing list), I do not force you to
	  enable these additional options.  It is up to you to supply either
	  "ifconfig" and "route" or the "ip" command, either via busybox or via
	  standalone utilities.

config CONFIG_FEATURE_IFUPDOWN_IP
	bool "  Use ip applet"
	default n
	depends on CONFIG_IFUPDOWN
	help
	  Use the iproute "ip" command to implement "ifup" and "ifdown", rather
	  than the default of using the older 'ifconfig' and 'route' utilities.

config CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
	bool "  Use busybox ip applet"
	default y
	depends on CONFIG_FEATURE_IFUPDOWN_IP
	select CONFIG_IP
	select CONFIG_FEATURE_IP_ADDRESS
	select CONFIG_FEATURE_IP_LINK
	select CONFIG_FEATURE_IP_ROUTE
	help
	  Use the busybox iproute "ip" applet to implement "ifupdown".

	  If leave this disabled, you must install the full-blown iproute2
	  utility or the  "ifup" and "ifdown" applets will not work.

config CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
	bool "  Use busybox ifconfig and route applets"
	default y
	depends on CONFIG_IFUPDOWN && !CONFIG_FEATURE_IFUPDOWN_IP
	select CONFIG_IFCONFIG
	select CONFIG_ROUTE
	help
	  Use the busybox iproute "ifconfig" and "route" applets to
	  implement the "ifup" and "ifdown" utilities.

	  If leave this disabled, you must install the full-blown ifconfig
	  and route utilities, or the  "ifup" and "ifdown" applets will not
	  work.

config CONFIG_FEATURE_IFUPDOWN_IPV4
	bool "  Enable support for IPv4"
	default y
	depends on CONFIG_IFUPDOWN
	help
	  If you want busybox to talk IPv4, leave this on.

config CONFIG_FEATURE_IFUPDOWN_IPV6
	bool "  Enable support for IPv6"
	default n
	depends on CONFIG_IFUPDOWN
	help
	  If you need support for IPv6, turn this option on.

config CONFIG_FEATURE_IFUPDOWN_IPX
	bool "  Enable support for IPX"
	default n
	depends on CONFIG_IFUPDOWN
	help
	  If this option is selected you can use busybox to work with IPX
	  networks.

config CONFIG_FEATURE_IFUPDOWN_MAPPING
	bool "  Enable mapping support"
	default n
	depends on CONFIG_IFUPDOWN
	help
	  This enables support for the "mapping" stanza, unless you have
	  a weird network setup you don't need it.

config CONFIG_INETD
	bool "inetd"
	default n
	help
	  Internet superserver daemon

config CONFIG_FEATURE_INETD_SUPPORT_BILTIN_ECHO
	bool "  Support echo service"
	default y
	depends on CONFIG_INETD
	help
	  Echo received data internal inetd service

config CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DISCARD
	bool "  Support discard service"
	default y
	depends on CONFIG_INETD
	help
	  Internet /dev/null internal inetd service

config CONFIG_FEATURE_INETD_SUPPORT_BILTIN_TIME
	bool "  Support time service"
	default y
	depends on CONFIG_INETD
	help
	  Return 32 bit time since 1900 internal inetd service

config CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DAYTIME
	bool "  Support daytime service"
	default y
	depends on CONFIG_INETD
	help
	  Return human-readable time internal inetd service

config CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN
	bool "  Support chargen service"
	default y
	depends on CONFIG_INETD
	help
	  Familiar character generator internal inetd service


config CONFIG_IP
	bool "ip"
	default n
	help
	  The "ip" applet is a TCP/IP interface configuration and routing
	  utility.  You generally don't need "ip" to use busybox with
	  TCP/IP.

if CONFIG_IP && CONFIG_IPADDR
	config CONFIG_FEATURE_IP_ADDRESS
		default y
	comment "  address (forced enabled for ipaddr)"
endif
if ! (CONFIG_IP && CONFIG_IPADDR)
	config CONFIG_FEATURE_IP_ADDRESS
		bool "  address"
		default y
		depends on CONFIG_IP
		help
		  Address manipulation support for the "ip" applet.
endif

if CONFIG_IP && CONFIG_IPLINK
	config CONFIG_FEATURE_IP_LINK
		default y
	comment "  link (forced enabled for iplink)"
endif
if !(CONFIG_IP && CONFIG_IPLINK)
	config CONFIG_FEATURE_IP_LINK
		bool "  link"
		default y
		depends on CONFIG_IP
		help
		  Configure network devices with "ip".
endif

if CONFIG_IP && CONFIG_IPROUTE
	config CONFIG_FEATURE_IP_ROUTE
		default y
	comment "  route (forced enabled for iproute)"
endif
if !(CONFIG_IP && CONFIG_IPROUTE)
	config CONFIG_FEATURE_IP_ROUTE
		bool "  route"
		default y
		depends on CONFIG_IP
		help
		  Add support for routing table management to "ip".
endif

if CONFIG_IP && CONFIG_IPTUNNEL
	config CONFIG_FEATURE_IP_TUNNEL
		default y
	comment "  tunnel (forced enabled for iptunnel)"
endif
if !(CONFIG_IP && CONFIG_IPTUNNEL)
	config CONFIG_FEATURE_IP_TUNNEL
		bool "  tunnel"
		default n
		depends on CONFIG_IP
		help
		  Add support for tunneling commands to "ip".
endif

config CONFIG_IPCALC
	bool "ipcalc"
	default n
	help
	  ipcalc takes an IP address and netmask and calculates the
	  resulting broadcast, network, and host range.

config CONFIG_FEATURE_IPCALC_FANCY
	bool "  Fancy IPCALC, more options, adds 1 kbyte"
	default y
	depends on CONFIG_IPCALC
	help
	  Adds the options hostname, prefix and silent to the output of "ipcalc".

config CONFIG_IPADDR
	bool "ipaddr"
	default n
	help
	  Equivalent to selecting address support to "ip", above.

config CONFIG_IPLINK
	bool "iplink"
	default n
	help
	  Equivalent to selecting link support to "ip", above.

config CONFIG_IPROUTE
	bool "iproute"
	default n
	help
	  Equivalent to selecting route support to "ip", above.

config CONFIG_IPTUNNEL
	bool "iptunnel"
	default n
	help
	  Equivalent to selecting tunnel support to "ip", above.

config CONFIG_NAMEIF
	bool "nameif"
	default n
	help
	  nameif is used to rename network interface by its MAC address.
	  Renamed interfaces MUST be in the down state.
	  It is possible to use a file (default: /etc/mactab)
	  with list of new interface names and MACs.
	  Maximum interface name length: IF_NAMESIZE = 16
	  File fields are separated by space or tab.
	  File format:
	  # Comment
	  new_interface_name	XX:XX:XX:XX:XX:XX

config CONFIG_NC
	bool "nc"
	default n
	help
	  A simple Unix utility which reads and writes data across network
	  connections.

config CONFIG_NETSTAT
	bool "netstat"
	default n
	help
	  netstat prints information about the Linux networking subsystem.

config CONFIG_NSLOOKUP
	bool "nslookup"
	default n
	help
	  nslookup is a tool to query Internet name servers.

config CONFIG_PING
	bool "ping"
	default n
	help
	  ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
	  elicit an ICMP ECHO_RESPONSE from a host or gateway.

config CONFIG_FEATURE_FANCY_PING
	bool "  Enable fancy ping output"
	default y
	depends on CONFIG_PING
	help
	  Make the output from the ping applet include statistics, and at the
	  same time provide full support for ICMP packets.

config CONFIG_PING6
	bool "ping6"
	default n
	depends on CONFIG_FEATURE_IPV6
	help
	  This will give you a ping that can talk IPv6.

config CONFIG_FEATURE_FANCY_PING6
	bool "  Enable fancy ping6 output"
	default y
	depends on CONFIG_PING6
	help
	  Make the output from the ping6 applet include statistics, and at the
	  same time provide full support for ICMP packets.

config CONFIG_ROUTE
	bool "route"
	default n
	help
	  Route displays or manipulates the kernel's IP routing tables.

config CONFIG_TELNET
	bool "telnet"
	default n
	help
	  Telnet is an interface to the TELNET protocol, but is also commonly
	  used to test other simple protocols.

config CONFIG_FEATURE_TELNET_TTYPE
	bool "  Pass TERM type to remote host"
	default y
	depends on CONFIG_TELNET
	help
	  Setting this option will forward the TERM environment variable to the
	  remote host you are connecting to.  This is useful to make sure that
	  things like ANSI colors and other control sequences behave.

config CONFIG_FEATURE_TELNET_AUTOLOGIN
	bool "  Pass USER type to remote host"
	default y
	depends on CONFIG_TELNET
	help
	  Setting this option will forward the USER environment variable to the
	  remote host you are connecting to. This is useful when you need to
	  log into a machine without telling the username (autologin). This
	  option enables `-a' and `-l USER' arguments.

config CONFIG_TELNETD
	bool "telnetd"
	default n
	help
	  A daemon for the TELNET protocol, allowing you to log onto the host
	  running the daemon.  Please keep in mind that the TELNET protocol
	  sends passwords in plain text.  If you can't afford the space for
	  any SSH daemon and you trust your network, you may say 'y' here.

config CONFIG_FEATURE_TELNETD_INETD
	bool "  Support call from inetd only"
	default n
	depends on CONFIG_TELNETD
	help
	  Selecting this will make telnetd only callable from inetd,
	  removing the standalone support.

config CONFIG_TFTP
	bool "tftp"
	default n
	help
	  This enables the Trivial File Transfer Protocol client program.  TFTP
	  is usually used for simple, small transfers such as a root image
	  for a network-enabled bootloader.

config CONFIG_FEATURE_TFTP_GET
	bool "  Enable \"get\" command"
	default y
	depends on CONFIG_TFTP
	help
	  Add support for the GET command within the TFTP client.  This allows
	  a client to retrieve a file from a TFTP server.

config CONFIG_FEATURE_TFTP_PUT
	bool "  Enable \"put\" command"
	default y
	depends on CONFIG_TFTP
	help
	  Add support for the PUT command within the TFTP client.  This allows
	  a client to transfer a file to a TFTP server.

config CONFIG_FEATURE_TFTP_BLOCKSIZE
	bool "  Enable \"blocksize\" command"
	default n
	depends on CONFIG_TFTP
	help
	  Allow the client to specify the desired block size for transfers.

config CONFIG_FEATURE_TFTP_DEBUG
	bool "  Enable debug"
	default n
	depends on CONFIG_TFTP
	help
	  Enable debug settings for tftp.  This is useful if you're running
	  into problems with tftp as the protocol doesn't help you much when
	  you run into problems.

config CONFIG_TRACEROUTE
	bool "traceroute"
	default n
	help
	  Utility to trace the route of IP packets

config CONFIG_FEATURE_TRACEROUTE_VERBOSE
	bool "  Enable verbose output"
	default n
	depends on CONFIG_TRACEROUTE
	help
	  Add some verbosity to traceroute.  This includes amongst other things
	  hostnames and ICMP response types.

config CONFIG_VCONFIG
	bool "vconfig"
	default n
	help
	  Creates, removes, and configures VLAN interfaces

config CONFIG_WGET
	bool "wget"
	default n
	help
	  wget is a utility for non-interactive download of files from HTTP,
	  HTTPS, and FTP servers.

config CONFIG_FEATURE_WGET_STATUSBAR
	bool "  Enable a nifty process meter (+2k)"
	default y
	depends on CONFIG_WGET
	help
	  Enable the transfer progress bar for wget transfers.

config CONFIG_FEATURE_WGET_AUTHENTICATION
	bool "  Enable HTTP authentication"
	default y
	depends on CONFIG_WGET
	help
	  Support authenticated HTTP transfers.

config CONFIG_FEATURE_WGET_IP6_LITERAL
	bool "  Enable IPv6 literal addresses"
	default y
	depends on CONFIG_WGET
	help
	  Support IPv6 address literal notation in URLs.

source networking/udhcp/Config.in

endmenu