config BR2_PACKAGE_PPPD
	bool "pppd"
	depends on !BR2_STATIC_LIBS
	depends on !BR2_TOOLCHAIN_USES_MUSL # Use __P() macro all over the tree
	depends on BR2_USE_MMU
	help
	  An implementation of the Point-to-point protocol.

	  http://www.samba.org/ppp/

if BR2_PACKAGE_PPPD

config BR2_PACKAGE_PPPD_FILTER
	bool "filtering"
	select BR2_PACKAGE_LIBPCAP
	help
	  Packet filtering abilities for pppd. If enabled,
	  the pppd active-filter and pass-filter options
	  are available.

config BR2_PACKAGE_PPPD_RADIUS
	bool "radius"
	help
	  Install RADIUS support for pppd

config BR2_PACKAGE_PPPD_OVERWRITE_RESOLV_CONF
	bool "overwrite /etc/resolv.conf"
	default y
	help
	  Overwrite /etc/resolv.conf instead of maintaining the
	  separate list of nameservers in /etc/ppp/resolv.conf

	  Note that the pppd default of writing to /etc/ppp/resolv.conf
	  does not work on a read-only rootfs unless you make it
	  writable in your rootfs customizations (e.g. by linking it to
	  a file in tmpfs or by mounting a writable filesystem on it).

endif

comment "pppd needs a uClibc or glibc toolchain w/ dynamic library"
	depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_MUSL
	depends on BR2_USE_MMU
