mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] Building hostapd for PTXdist and an ARM Target
@ 2013-05-07  8:17 Pascal K
  2013-05-07  8:28 ` Juergen Beisert
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Pascal K @ 2013-05-07  8:17 UTC (permalink / raw)
  To: ptxdist


[-- Attachment #1.1: Type: text/plain, Size: 1204 bytes --]

Hello all,

I'am beginning to use PTXdist, so I followed the How to become a PTXdist
Guru Manual to get started.
But there is some information which I don't find/don't get.

My task:
-> Building hostapd-2.0.tar.gz for my ARM Cortex A8 target board

So I tried to follow section 4.2.2 in the manual.

*$ ptxdist newpackage target *
 edited the mandatory fields, added md5sum, selected the package in
*$ ptxdist menuconfig
$ ptxdist get hostapd
$ ptxdist extract hostapd
$ ptxdist prepare hostapd*
and finally tried edited inside the hostapd folder the defconfig file to
.config
*$ ptxdist compile hostapd *

now gives me the error that

*make[1]: Entering directory
`/opt/PHYTEC_BSPs/phyCORE-AM335x-PD12.1.1/platform-phyCORE-AM335x/build-target/hostapd-2.0'
make[1]: *** No targets specified and no makefile found.  Stop.
make[1]: Leaving directory
`/opt/PHYTEC_BSPs/phyCORE-AM335x-PD12.1.1/platform-phyCORE-AM335x/build-target/hostapd-2.0'
make: ***
[/opt/PHYTEC_BSPs/phyCORE-AM335x-PD12.1.1/platform-phyCORE-AM335x/state/hostapd.compile]
Error 2*


So I think I missed a step or a went with the wrong option at the
beginning.
Could someone give me an advice, that would be great!


Best regards,
Pascal

[-- Attachment #1.2: Type: text/html, Size: 1391 bytes --]

[-- Attachment #2: Type: text/plain, Size: 48 bytes --]

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 11+ messages in thread
* Re: [ptxdist] Building hostapd for PTXdist and an ARM Target
@ 2013-05-07 11:24 Pascal K
  0 siblings, 0 replies; 11+ messages in thread
From: Pascal K @ 2013-05-07 11:24 UTC (permalink / raw)
  To: ptxdist


[-- Attachment #1.1: Type: text/plain, Size: 36471 bytes --]

Thanks for the help, i attached the working make and in file here:
Thanks, the solution for my beginners problem was awesome fast.

Best regards,
Pascal

*hostapd.in:*
## SECTION=project_specific

config HOSTAPD
       bool
       prompt "hostapd"
       help
         FIXME

if HOSTAPD

       config HOSTAPD_DRIVER_HOSTAP
       bool
       prompt "HOSTAP driver"
       help
        Driver interface for Host AP driver

       config HOSTAPD_DRIVER_WIRED
       bool
       prompt "Wired driver"
       help
        Driver interface for wired authenticator

       config HOSTAPD_DRIVER_NL80211
       bool
       prompt "NL80211 driver"
       select LIBNL
       help
        Driver interface for drivers using the nl80211 kernel interface

       config HOSTAPD_DRIVER_NONE
       bool
       prompt "no driver"
       help
        Driver interface for no driver (e.g., RADIUS server only)

       config HOSTAPD_IAPP
       bool
       prompt "IEEE 802.11F/IAPP"
       help
        IEEE 802.11F/IAPP

       config HOSTAPD_RSN_PREAUTH
       bool
       prompt "WPA2/IEEE 802.11i RSN pre-authentication"
       help
        WPA2/IEEE 802.11i RSN pre-authentication

       config HOSTAPD_PEERKEY
       bool
       prompt "PeerKey handshake for Station to Station Link (IEEE 802.11e
DLS)"
       help
        PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)

       config HOSTAPD_IEEE80211W
       bool
       prompt "IEEE 802.11w (management frame protection)"
       help
        IEEE 802.11w (management frame protection)
        This version is an experimental implementation based on IEEE
802.11w/D1.0
        draft and is subject to change since the standard has not yet been
finalized.
        Driver support is also needed for IEEE 802.11w.

       config HOSTAPD_EAP
       bool
       prompt "Integrated EAP server"
       help
        Integrated EAP server

       config HOSTAPD_EAP_MD5
       bool
       prompt "EAP-MD5 for the integrated EAP server"
       help
        EAP-MD5 for the integrated EAP server

       config HOSTAPD_EAP_TLS
       bool
       prompt "EAP-TLS for the integrated EAP server"
       help
        EAP-TLS for the integrated EAP server

       config HOSTAPD_EAP_MSCHAPV2
       bool
       prompt "EAP-MSCHAPv2 for the integrated EAP server"
       help
        EAP-MSCHAPv2 for the integrated EAP server

       config HOSTAPD_EAP_PEAP
       bool
       prompt "EAP-PEAP for the integrated EAP server"
       help
        EAP-PEAP for the integrated EAP server

       config HOSTAPD_EAP_GTC
       bool
       prompt "EAP-GTC for the integrated EAP server"
       help
        EAP-GTC for the integrated EAP server

       config HOSTAPD_EAP_TTLS
       bool
       prompt "EAP-TTLS for the integrated EAP server"
       help
        EAP-TTLS for the integrated EAP server

       config HOSTAPD_EAP_SIM
       bool
       prompt "EAP-SIM for the integrated EAP server"
       help
        EAP-SIM for the integrated EAP server

       config HOSTAPD_EAP_AKA
       bool
       prompt "EAP-AKA for the integrated EAP server"
       help
        EAP-AKA for the integrated EAP server

       config HOSTAPD_EAP_AKA_PRIME
       bool
       prompt "EAP-AKA' (AKA-Prime)"
       help
        EAP-AKA' (AKA-Prime) for the integrated EAP server
        This requires CONFIG_EAP_AKA to be enabled, too.

       config HOSTAPD_EAP_PAX
       bool
       prompt "EAP-PAX for the integrated EAP server"
       help
        EAP-PAX for the integrated EAP server

       config HOSTAPD_EAP_PSK
       bool
       prompt "EAP-PSK for the integrated EAP server"
       help
        EAP-PSK for the integrated EAP server (this is _not_ needed for
WPA-PSK)

       config HOSTAPD_EAP_PWD
       bool
       prompt "EAP-pwd for the integrated EAP server"
       help
        EAP-pwd for the integrated EAP server (secure authentication with a
password)

       config HOSTAPD_EAP_SAKE
       bool
       prompt "EAP-SAKE for the integrated EAP server"
       help
        EAP-SAKE for the integrated EAP server

       config HOSTAPD_EAP_GPSK
       bool
       prompt "EAP-GPSK for the integrated EAP server"
       help
        EAP-GPSK for the integrated EAP server

       config HOSTAPD_EAP_GPSK_SHA256
       bool
       prompt "Include support for optional SHA256 cipher suite in EAP-GPSK"
       help
        Include support for optional SHA256 cipher suite in EAP-GPSK

       config HOSTAPD_EAP_FAST
       bool
       prompt "EAP-FAST for the integrated EAP server"
       help
        EAP-FAST for the integrated EAP server
        Note: Default OpenSSL package does not include support for all the
        functionality needed for EAP-FAST. If EAP-FAST is enabled with
OpenSSL,
        the OpenSSL library must be patched
(openssl-0.9.9-session-ticket.patch)
        to add the needed functions.

       config HOSTAPD_WPS
       bool
       prompt "Wi-Fi Protected Setup (WPS)"
       help
        Wi-Fi Protected Setup (WPS)

       config HOSTAPD_WPS2
       bool
       prompt "Enable WSC 2.0 support"
       help
        Enable WSC 2.0 support

       config HOSTAPD_WPS_UPNP
       bool
       prompt "Enable UPnP support for external WPS Registrars"
       help
        Enable UPnP support for external WPS Registrars

       config HOSTAPD_WPS_NFC
       bool
       prompt "Enable WPS support with NFC config method"
       help
        Enable WPS support with NFC config method

       config HOSTAPD_EAP_IKEV2
       bool
       prompt "EAP-IKEv2"
       help
        EAP-IKEv2

       config HOSTAPD_EAP_TNC
       bool
       prompt "Trusted Network Connect (EAP-TNC)"
       help
        Trusted Network Connect (EAP-TNC)

       config HOSTAPD_PKCS12
       bool
       prompt "PKCS#12 (PFX) support"
       help
        PKCS#12 (PFX) support (used to read private key and certificate
file from
        a file that usually has extension .p12 or .pfx)

       config HOSTAPD_RADIUS_SERVER
       bool
       prompt "RADIUS authentication server"
       help
        RADIUS authentication server. This provides access to the
integrated EAP
        server from external hosts using RADIUS.

       config HOSTAPD_IPV6
       bool
       prompt "Build IPv6 support for RADIUS operations"
       help
        Build IPv6 support for RADIUS operations

       config HOSTAPD_IEEE80211R
       bool
       prompt "IEEE Std 802.11r-2008 (Fast BSS Transition)"
       help
        IEEE Std 802.11r-2008 (Fast BSS Transition)

       config HOSTAPD_DRIVER_RADIUS_ACL
       bool
       prompt "Hostapd's IEEE 802.11 authentication (ACL)"
       help
        Use the hostapd's IEEE 802.11 authentication (ACL), but without
        the IEEE 802.11 Management capability (e.g., madwifi or
FreeBSD/net80211)

       config HOSTAPD_IEEE80211N
       bool
       prompt "IEEE 802.11n (High Throughput) support"
       help
        IEEE 802.11n (High Throughput) support

       config HOSTAPD_WNM
       bool
       prompt "Wireless Network Management (IEEE Std 802.11v-2011)
(EXPERIMENTAL)"
       help
        Wireless Network Management (IEEE Std 802.11v-2011)
        Note: This is experimental and not complete implementation.

       config HOSTAPD_IEEE80211AC
       bool
       prompt "IEEE 802.11ac (Very High Throughput) support"
       help
        IEEE 802.11ac (Very High Throughput) support

       config HOSTAPD_NO_STDOUT_DEBUG
       bool
       prompt "Remove stdout debugging code"
       help
        Remove debugging code that is printing out debug messages to stdout.
        This can be used to reduce the size of the hostapd considerably if
debugging
        code is not needed.

       config HOSTAPD_DEBUG_FILE
       bool
       prompt "Log file support"
       help
        Add support for writing debug log to a file: -f /tmp/hostapd.log
        Disabled by default.

       config HOSTAPD_NO_ACCOUNTING
       bool
       prompt "Remove support for RADIUS accounting"
       help
        Remove support for RADIUS accounting

       config HOSTAPD_NO_RADIUS
       bool
       prompt "Remove support for RADIUS"
       help
        Remove support for RADIUS

       config HOSTAPD_NO_VLAN
       bool
       prompt "Remove support for VLANs"
       help
        Remove support for VLANs

       config HOSTAPD_FULL_DYNAMIC_VLAN
       bool
       prompt "Fully dynamic VLAN support"
       help
        Enable support for fully dynamic VLANs. This enables hostapd to
        automatically create bridge and VLAN interfaces if necessary.

       config HOSTAPD_VLAN_NETLINK
       bool
       prompt "netlink-based kernel API for VLAN operations"
       help
        Use netlink-based kernel API for VLAN operations instead of ioctl()
        Note: This requires libnl 3.1 or newer.

       config HOSTAPD_NO_DUMP_STATE
       bool
       prompt "Remove SIGUSR1 state dump support"
       help
        Remove support for dumping state into a file on SIGUSR1 signal
        This can be used to reduce binary size at the cost of disabling a
debugging
        option.

       config HOSTAPD_WPA_TRACE
       bool
       prompt "Enable tracing code for developer debugging"
       help
        Enable tracing code for developer debugging
        This tracks use of memory allocations and other registrations and
reports
        incorrect use with a backtrace of call (or allocation) location.

       config HOSTAPD_NO_RANDOM_POOL
       bool
       prompt "Disabled hostapd's internal random pool"
       help
        hostapd depends on strong random number generation being available
from the
        operating system. os_get_random() function is used to fetch random
data when
        needed, e.g., for key generation. On Linux and BSD systems, this
works by
        reading /dev/urandom. It should be noted that the OS entropy pool
needs to be
        properly initialized before hostapd is started. This is important
especially
        on embedded devices that do not have a hardware random number
generator and
        may by default start up with minimal entropy available for random
number
        generation.

        As a safety net, hostapd is by default trying to internally collect
        additional entropy for generating random data to mix in with the
data
        fetched from the OS. This by itself is not considered to be very
strong, but
        it may help in cases where the system pool is not initialized
properly.
        However, it is very strongly recommended that the system pool is
initialized
        with enough entropy either by using hardware assisted random number
        generator or by storing state over device reboots.

        hostapd can be configured to maintain its own entropy store over
restarts to
        enhance random number generation. This is not perfect, but it is
much more
        secure than using the same sequence of random numbers after every
reboot.
        This can be enabled with -e<entropy file> command line option. The
specified
        file needs to be readable and writable by hostapd.

        If the os_get_random() is known to provide strong random data
(e.g., on
        Linux/BSD, the board in question is known to have reliable source
of random
        data from /dev/urandom), the internal hostapd random pool can be
disabled.
        This will save some in binary size and CPU use. However, this
should only be
        considered for builds that are known to be used on devices that
meet the
        requirements described above.

       #config HOSTAPD_TLS
       #string
       #prompt "Select TLS implementation"
       #default "openssl"
       #help
       # Select TLS implementation
       # openssl = OpenSSL (default)
       # gnutls = GnuTLS
       #internal = Internal TLSv1 implementation (experimental)
       # none = Empty template

       config HOSTAPD_TLSV11
       bool
       prompt "TLS v1.1"
       help
        TLS-based EAP methods require at least TLS v1.0. Newer version of
TLS (v1.1)
        can be enabled to get a stronger construction of messages when
block ciphers
        are used.

       config HOSTAPD_TLSV12
       bool
       prompt "TLS v1.2"
       help
        TLS-based EAP methods require at least TLS v1.0. Newer version of
TLS (v1.2)
        can be enabled to enable use of stronger crypto algorithms.

       config HOSTAPD_INTERNAL_LIBTOMMATH_FAST
       bool
       prompt "Internal LibTomMath"
       help
        At the cost of about 4 kB of additional binary size, the internal
LibTomMath
        can be configured to include faster routines for exptmod, sqr, and
div to
        speed up DH and RSA calculation considerably

       config HOSTAPD_INTERWORKING
       bool
       prompt "Interworking (IEEE 802.11u)"
       help
        Interworking (IEEE 802.11u)
        This can be used to enable functionality to improve interworking
with
        external networks.

       config HOSTAPD_HS20
       bool
       prompt "Hotspot 2.0"
       help
        Hotspot 2.0

       config HOSTAPD_SQLITE
       bool
       prompt "SQLite database support"
       help
        Enable SQLite database support in hlr_auc_gw, EAP-SIM DB, and
eap_user_file

endif

*hostapd.make: *
# -*-makefile-*-
#
# Copyright (C) 2013 by Matthias Fend <matthias.fend@wolfvision.com>
#
# See CREDITS for details about who has contributed to this project.
#
# For further information about the PTXdist project and license conditions
# see the README file.
#

#
# We provide this package
#
PACKAGES-$(PTXCONF_HOSTAPD) += hostapd

#
# Paths and names
#
HOSTAPD_NAME   := hostapd
HOSTAPD_VERSION        := 2.0
HOSTAPD_MD5    := ba22e639bc57aa4035d2ea8ffa9bbbee
HOSTAPD                := $(HOSTAPD_NAME)-$(HOSTAPD_VERSION)
HOSTAPD_SUFFIX := tar.gz
HOSTAPD_URL    := http://w1.fi/releases/$(HOSTAPD).$(HOSTAPD_SUFFIX)
HOSTAPD_SOURCE := $(SRCDIR)/$(HOSTAPD).$(HOSTAPD_SUFFIX)
HOSTAPD_DIR    := $(BUILDDIR)/$(HOSTAPD)
HOSTAPD_SUBDIR := $(HOSTAPD_NAME)
HOSTAPD_CONFIG := $(BUILDDIR)/$(HOSTAPD)/$(HOSTAPD_SUBDIR)/.config
HOSTAPD_LICENSE        := BSD

#
----------------------------------------------------------------------------
# Prepare
#
----------------------------------------------------------------------------

HOSTAPD_PATH   := PATH=$(CROSS_PATH)
#HOSTAPD_CONF_TOOL     := NO
HOSTAPD_MAKE_ENV       := \
       $(CROSS_ENV) \
       LIBDIR=/lib \
       BINDIR=/sbin


$(STATEDIR)/hostapd.prepare:
@$(call targetinfo)

#      # run 'make clean' as hostapd's build system does not recognize
config changes
@-cd $(HOSTAPD_DIR)/$(HOSTAPD_SUBDIR) && \
$(HOSTAPD_MAKE_ENV) $(HOSTAPD_PATH) $(MAKE) clean

@echo "CC=$(CROSS_CC)"                                          >
 $(HOSTAPD_CONFIG) && \
echo "CFLAGS += -I$(PTXDIST_SYSROOT_TARGET)/include"            >>
$(HOSTAPD_CONFIG) && \
echo "CFLAGS += -I$(PTXDIST_SYSROOT_TARGET)/usr/include"        >>
$(HOSTAPD_CONFIG) && \
echo "LDFLAGS += -L$(PTXDIST_SYSROOT_TARGET)/lib"               >>
$(HOSTAPD_CONFIG) && \
echo "LDFLAGS += -L$(PTXDIST_SYSROOT_TARGET)/usr/lib"           >>
$(HOSTAPD_CONFIG)

@grep -e PTXCONF_HOSTAPD_ $(PTXDIST_PTXCONFIG) | \
sed -e 's/PTXCONF_HOSTAPD_/CONFIG_/g' -e 's/\"//g' >> $(HOSTAPD_CONFIG)

@$(call touch)

#
----------------------------------------------------------------------------
# Target-Install
#
----------------------------------------------------------------------------

$(STATEDIR)/hostapd.targetinstall:
@$(call targetinfo)

@$(call install_init, hostapd)
@$(call install_fixup, hostapd,PRIORITY,optional)
@$(call install_fixup, hostapd,SECTION,base)
@$(call install_fixup, hostapd,AUTHOR,"Matthias Fend <
matthias.fend@wolfvision.com>")
@$(call install_fixup, hostapd,DESCRIPTION,missing)

@$(call install_copy, hostapd, 0, 0, 0755,
$(HOSTAPD_DIR)/$(HOSTAPD_SUBDIR)/hostapd, /usr/bin/hostapd)

@$(call install_finish, hostapd)

@$(call touch)

#
----------------------------------------------------------------------------
# Clean
#
----------------------------------------------------------------------------

$(STATEDIR)/hostapd.clean:
@$(call targetinfo)
@-cd $(HOSTAPD_DIR) && \
$(HOSTAPD_ENV) $(HOSTAPD_PATH) $(MAKE) clean
@$(call clean_pkg, HOSTAPD)

# vim: syntax=make


2013/5/7 Matthias Fend <Matthias.Fend@wolfvision.net>

> Hi Pascal,
>
> > Von: ptxdist-bounces@pengutronix.de [mailto:
> ptxdist-bounces@pengutronix.de] Im Auftrag von Pascal K
> > Gesendet: Dienstag, 07. Mai 2013 10:18
> > An: ptxdist@pengutronix.de
> > Betreff: [ptxdist] Building hostapd for PTXdist and an ARM Target
> >
> > Hello all,
> >
> > I'am beginning to use PTXdist, so I followed the How to become a PTXdist
> Guru Manual to get started.
> > But there is some information which I don't find/don't get.
> >
> > My task:
> > -> Building hostapd-2.0.tar.gz for my ARM Cortex A8 target board
> >
> > So I tried to follow section 4.2.2 in the manual.
> >
> > $ ptxdist newpackage target
> >  edited the mandatory fields, added md5sum, selected the package in
> > $ ptxdist menuconfig
> > $ ptxdist get hostapd
> > $ ptxdist extract hostapd
> > $ ptxdist prepare hostapd
> > and finally tried edited inside the hostapd folder the defconfig file to
> .config
> > $ ptxdist compile hostapd
> >
> > now gives me the error that
> >
> > make[1]: Entering directory
> `/opt/PHYTEC_BSPs/phyCORE-AM335x-PD12.1.1/platform-phyCORE-AM335x/build-target/hostapd-2.0'
> > make[1]: *** No targets specified and no makefile found.  Stop.
> > make[1]: Leaving directory
> `/opt/PHYTEC_BSPs/phyCORE-AM335x-PD12.1.1/platform-phyCORE-AM335x/build-target/hostapd-2.0'
> > make: ***
> [/opt/PHYTEC_BSPs/phyCORE-AM335x-PD12.1.1/platform-phyCORE-AM335x/state/hostapd.compile]
> Error 2
> >
> >
> > So I think I missed a step or a went with the wrong option at the
> beginning.
> > Could someone give me an advice, that would be great!
> >
> >
> > Best regards,
> > Pascal
>
> Here comes a patch which will add hostapd-2.0 to ptxdist. It's not yet
> finished and (most) probably not everything is working.
> But maybe you can use it as starting point...
>
> good luck,
> ~matthias
>
> ---
>  rules/hostapd.in   |  411
> ++++++++++++++++++++++++++++++++++++++++++++++++++++
>  rules/hostapd.make |   89 +++++++++++
>  2 files changed, 500 insertions(+), 0 deletions(-)
>  create mode 100644 rules/hostapd.in
>  create mode 100644 rules/hostapd.make
>
> diff --git a/rules/hostapd.in b/rules/hostapd.in
> new file mode 100644
> index 0000000..78bef61
> --- /dev/null
> +++ b/rules/hostapd.in
> @@ -0,0 +1,411 @@
> +## SECTION=networking
> +
> +config HOSTAPD
> +       bool
> +       prompt "hostapd"
> +       help
> +         FIXME
> +
> +if HOSTAPD
> +
> +       config HOSTAPD_DRIVER_HOSTAP
> +       bool
> +       prompt "HOSTAP driver"
> +       help
> +        Driver interface for Host AP driver
> +
> +       config HOSTAPD_DRIVER_WIRED
> +       bool
> +       prompt "Wired driver"
> +       help
> +        Driver interface for wired authenticator
> +
> +       config HOSTAPD_DRIVER_NL80211
> +       bool
> +       prompt "NL80211 driver"
> +       select LIBNL
> +       help
> +        Driver interface for drivers using the nl80211 kernel interface
> +
> +       config HOSTAPD_DRIVER_NONE
> +       bool
> +       prompt "no driver"
> +       help
> +        Driver interface for no driver (e.g., RADIUS server only)
> +
> +       config HOSTAPD_IAPP
> +       bool
> +       prompt "IEEE 802.11F/IAPP"
> +       help
> +        IEEE 802.11F/IAPP
> +
> +       config HOSTAPD_RSN_PREAUTH
> +       bool
> +       prompt "WPA2/IEEE 802.11i RSN pre-authentication"
> +       help
> +        WPA2/IEEE 802.11i RSN pre-authentication
> +
> +       config HOSTAPD_PEERKEY
> +       bool
> +       prompt "PeerKey handshake for Station to Station Link (IEEE
> 802.11e DLS)"
> +       help
> +        PeerKey handshake for Station to Station Link (IEEE 802.11e DLS)
> +
> +       config HOSTAPD_IEEE80211W
> +       bool
> +       prompt "IEEE 802.11w (management frame protection)"
> +       help
> +        IEEE 802.11w (management frame protection)
> +        This version is an experimental implementation based on IEEE
> 802.11w/D1.0
> +        draft and is subject to change since the standard has not yet
> been finalized.
> +        Driver support is also needed for IEEE 802.11w.
> +
> +       config HOSTAPD_EAP
> +       bool
> +       prompt "Integrated EAP server"
> +       help
> +        Integrated EAP server
> +
> +       config HOSTAPD_EAP_MD5
> +       bool
> +       prompt "EAP-MD5 for the integrated EAP server"
> +       help
> +        EAP-MD5 for the integrated EAP server
> +
> +       config HOSTAPD_EAP_TLS
> +       bool
> +       prompt "EAP-TLS for the integrated EAP server"
> +       help
> +        EAP-TLS for the integrated EAP server
> +
> +       config HOSTAPD_EAP_MSCHAPV2
> +       bool
> +       prompt "EAP-MSCHAPv2 for the integrated EAP server"
> +       help
> +        EAP-MSCHAPv2 for the integrated EAP server
> +
> +       config HOSTAPD_EAP_PEAP
> +       bool
> +       prompt "EAP-PEAP for the integrated EAP server"
> +       help
> +        EAP-PEAP for the integrated EAP server
> +
> +       config HOSTAPD_EAP_GTC
> +       bool
> +       prompt "EAP-GTC for the integrated EAP server"
> +       help
> +        EAP-GTC for the integrated EAP server
> +
> +       config HOSTAPD_EAP_TTLS
> +       bool
> +       prompt "EAP-TTLS for the integrated EAP server"
> +       help
> +        EAP-TTLS for the integrated EAP server
> +
> +       config HOSTAPD_EAP_SIM
> +       bool
> +       prompt "EAP-SIM for the integrated EAP server"
> +       help
> +        EAP-SIM for the integrated EAP server
> +
> +       config HOSTAPD_EAP_AKA
> +       bool
> +       prompt "EAP-AKA for the integrated EAP server"
> +       help
> +        EAP-AKA for the integrated EAP server
> +
> +       config HOSTAPD_EAP_AKA_PRIME
> +       bool
> +       prompt "EAP-AKA' (AKA-Prime)"
> +       help
> +        EAP-AKA' (AKA-Prime) for the integrated EAP server
> +        This requires CONFIG_EAP_AKA to be enabled, too.
> +
> +       config HOSTAPD_EAP_PAX
> +       bool
> +       prompt "EAP-PAX for the integrated EAP server"
> +       help
> +        EAP-PAX for the integrated EAP server
> +
> +       config HOSTAPD_EAP_PSK
> +       bool
> +       prompt "EAP-PSK for the integrated EAP server"
> +       help
> +        EAP-PSK for the integrated EAP server (this is _not_ needed for
> WPA-PSK)
> +
> +       config HOSTAPD_EAP_PWD
> +       bool
> +       prompt "EAP-pwd for the integrated EAP server"
> +       help
> +        EAP-pwd for the integrated EAP server (secure authentication with
> a password)
> +
> +       config HOSTAPD_EAP_SAKE
> +       bool
> +       prompt "EAP-SAKE for the integrated EAP server"
> +       help
> +        EAP-SAKE for the integrated EAP server
> +
> +       config HOSTAPD_EAP_GPSK
> +       bool
> +       prompt "EAP-GPSK for the integrated EAP server"
> +       help
> +        EAP-GPSK for the integrated EAP server
> +
> +       config HOSTAPD_EAP_GPSK_SHA256
> +       bool
> +       prompt "Include support for optional SHA256 cipher suite in
> EAP-GPSK"
> +       help
> +        Include support for optional SHA256 cipher suite in EAP-GPSK
> +
> +       config HOSTAPD_EAP_FAST
> +       bool
> +       prompt "EAP-FAST for the integrated EAP server"
> +       help
> +        EAP-FAST for the integrated EAP server
> +        Note: Default OpenSSL package does not include support for all the
> +        functionality needed for EAP-FAST. If EAP-FAST is enabled with
> OpenSSL,
> +        the OpenSSL library must be patched
> (openssl-0.9.9-session-ticket.patch)
> +        to add the needed functions.
> +
> +       config HOSTAPD_WPS
> +       bool
> +       prompt "Wi-Fi Protected Setup (WPS)"
> +       help
> +        Wi-Fi Protected Setup (WPS)
> +
> +       config HOSTAPD_WPS2
> +       bool
> +       prompt "Enable WSC 2.0 support"
> +       help
> +        Enable WSC 2.0 support
> +
> +       config HOSTAPD_WPS_UPNP
> +       bool
> +       prompt "Enable UPnP support for external WPS Registrars"
> +       help
> +        Enable UPnP support for external WPS Registrars
> +
> +       config HOSTAPD_WPS_NFC
> +       bool
> +       prompt "Enable WPS support with NFC config method"
> +       help
> +        Enable WPS support with NFC config method
> +
> +       config HOSTAPD_EAP_IKEV2
> +       bool
> +       prompt "EAP-IKEv2"
> +       help
> +        EAP-IKEv2
> +
> +       config HOSTAPD_EAP_TNC
> +       bool
> +       prompt "Trusted Network Connect (EAP-TNC)"
> +       help
> +        Trusted Network Connect (EAP-TNC)
> +
> +       config HOSTAPD_PKCS12
> +       bool
> +       prompt "PKCS#12 (PFX) support"
> +       help
> +        PKCS#12 (PFX) support (used to read private key and certificate
> file from
> +        a file that usually has extension .p12 or .pfx)
> +
> +       config HOSTAPD_RADIUS_SERVER
> +       bool
> +       prompt "RADIUS authentication server"
> +       help
> +        RADIUS authentication server. This provides access to the
> integrated EAP
> +        server from external hosts using RADIUS.
> +
> +       config HOSTAPD_IPV6
> +       bool
> +       prompt "Build IPv6 support for RADIUS operations"
> +       help
> +        Build IPv6 support for RADIUS operations
> +
> +       config HOSTAPD_IEEE80211R
> +       bool
> +       prompt "IEEE Std 802.11r-2008 (Fast BSS Transition)"
> +       help
> +        IEEE Std 802.11r-2008 (Fast BSS Transition)
> +
> +       config HOSTAPD_DRIVER_RADIUS_ACL
> +       bool
> +       prompt "Hostapd's IEEE 802.11 authentication (ACL)"
> +       help
> +        Use the hostapd's IEEE 802.11 authentication (ACL), but without
> +        the IEEE 802.11 Management capability (e.g., madwifi or
> FreeBSD/net80211)
> +
> +       config HOSTAPD_IEEE80211N
> +       bool
> +       prompt "IEEE 802.11n (High Throughput) support"
> +       help
> +        IEEE 802.11n (High Throughput) support
> +
> +       config HOSTAPD_WNM
> +       bool
> +       prompt "Wireless Network Management (IEEE Std 802.11v-2011)
> (EXPERIMENTAL)"
> +       help
> +        Wireless Network Management (IEEE Std 802.11v-2011)
> +        Note: This is experimental and not complete implementation.
> +
> +       config HOSTAPD_IEEE80211AC
> +       bool
> +       prompt "IEEE 802.11ac (Very High Throughput) support"
> +       help
> +        IEEE 802.11ac (Very High Throughput) support
> +
> +       config HOSTAPD_NO_STDOUT_DEBUG
> +       bool
> +       prompt "Remove stdout debugging code"
> +       help
> +        Remove debugging code that is printing out debug messages to
> stdout.
> +        This can be used to reduce the size of the hostapd considerably
> if debugging
> +        code is not needed.
> +
> +       config HOSTAPD_DEBUG_FILE
> +       bool
> +       prompt "Log file support"
> +       help
> +        Add support for writing debug log to a file: -f /tmp/hostapd.log
> +        Disabled by default.
> +
> +       config HOSTAPD_NO_ACCOUNTING
> +       bool
> +       prompt "Remove support for RADIUS accounting"
> +       help
> +        Remove support for RADIUS accounting
> +
> +       config HOSTAPD_NO_RADIUS
> +       bool
> +       prompt "Remove support for RADIUS"
> +       help
> +        Remove support for RADIUS
> +
> +       config HOSTAPD_NO_VLAN
> +       bool
> +       prompt "Remove support for VLANs"
> +       help
> +        Remove support for VLANs
> +
> +       config HOSTAPD_FULL_DYNAMIC_VLAN
> +       bool
> +       prompt "Fully dynamic VLAN support"
> +       help
> +        Enable support for fully dynamic VLANs. This enables hostapd to
> +        automatically create bridge and VLAN interfaces if necessary.
> +
> +       config HOSTAPD_VLAN_NETLINK
> +       bool
> +       prompt "netlink-based kernel API for VLAN operations"
> +       help
> +        Use netlink-based kernel API for VLAN operations instead of
> ioctl()
> +        Note: This requires libnl 3.1 or newer.
> +
> +       config HOSTAPD_NO_DUMP_STATE
> +       bool
> +       prompt "Remove SIGUSR1 state dump support"
> +       help
> +        Remove support for dumping state into a file on SIGUSR1 signal
> +        This can be used to reduce binary size at the cost of disabling a
> debugging
> +        option.
> +
> +       config HOSTAPD_WPA_TRACE
> +       bool
> +       prompt "Enable tracing code for developer debugging"
> +       help
> +        Enable tracing code for developer debugging
> +        This tracks use of memory allocations and other registrations and
> reports
> +        incorrect use with a backtrace of call (or allocation) location.
> +
> +       config HOSTAPD_NO_RANDOM_POOL
> +       bool
> +       prompt "Disabled hostapd's internal random pool"
> +       help
> +        hostapd depends on strong random number generation being
> available from the
> +        operating system. os_get_random() function is used to fetch
> random data when
> +        needed, e.g., for key generation. On Linux and BSD systems, this
> works by
> +        reading /dev/urandom. It should be noted that the OS entropy pool
> needs to be
> +        properly initialized before hostapd is started. This is important
> especially
> +        on embedded devices that do not have a hardware random number
> generator and
> +        may by default start up with minimal entropy available for random
> number
> +        generation.
> +
> +        As a safety net, hostapd is by default trying to internally
> collect
> +        additional entropy for generating random data to mix in with the
> data
> +        fetched from the OS. This by itself is not considered to be very
> strong, but
> +        it may help in cases where the system pool is not initialized
> properly.
> +        However, it is very strongly recommended that the system pool is
> initialized
> +        with enough entropy either by using hardware assisted random
> number
> +        generator or by storing state over device reboots.
> +
> +        hostapd can be configured to maintain its own entropy store over
> restarts to
> +        enhance random number generation. This is not perfect, but it is
> much more
> +        secure than using the same sequence of random numbers after every
> reboot.
> +        This can be enabled with -e<entropy file> command line option.
> The specified
> +        file needs to be readable and writable by hostapd.
> +
> +        If the os_get_random() is known to provide strong random data
> (e.g., on
> +        Linux/BSD, the board in question is known to have reliable source
> of random
> +        data from /dev/urandom), the internal hostapd random pool can be
> disabled.
> +        This will save some in binary size and CPU use. However, this
> should only be
> +        considered for builds that are known to be used on devices that
> meet the
> +        requirements described above.
> +
> +       config HOSTAPD_TLS
> +       string
> +       prompt "Select TLS implementation"
> +       default "openssl"
> +       help
> +        Select TLS implementation
> +        openssl = OpenSSL (default)
> +        gnutls = GnuTLS
> +        internal = Internal TLSv1 implementation (experimental)
> +        none = Empty template
> +
> +       config HOSTAPD_TLSV11
> +       bool
> +       prompt "TLS v1.1"
> +       help
> +        TLS-based EAP methods require at least TLS v1.0. Newer version of
> TLS (v1.1)
> +        can be enabled to get a stronger construction of messages when
> block ciphers
> +        are used.
> +
> +       config HOSTAPD_TLSV12
> +       bool
> +       prompt "TLS v1.2"
> +       help
> +        TLS-based EAP methods require at least TLS v1.0. Newer version of
> TLS (v1.2)
> +        can be enabled to enable use of stronger crypto algorithms.
> +
> +       config HOSTAPD_INTERNAL_LIBTOMMATH_FAST
> +       bool
> +       prompt "Internal LibTomMath"
> +       help
> +        At the cost of about 4 kB of additional binary size, the internal
> LibTomMath
> +        can be configured to include faster routines for exptmod, sqr,
> and div to
> +        speed up DH and RSA calculation considerably
> +
> +       config HOSTAPD_INTERWORKING
> +       bool
> +       prompt "Interworking (IEEE 802.11u)"
> +       help
> +        Interworking (IEEE 802.11u)
> +        This can be used to enable functionality to improve interworking
> with
> +        external networks.
> +
> +       config HOSTAPD_HS20
> +       bool
> +       prompt "Hotspot 2.0"
> +       help
> +        Hotspot 2.0
> +
> +       config HOSTAPD_SQLITE
> +       bool
> +       prompt "SQLite database support"
> +       help
> +        Enable SQLite database support in hlr_auc_gw, EAP-SIM DB, and
> eap_user_file
> +
> +endif
> +
> +
> diff --git a/rules/hostapd.make b/rules/hostapd.make
> new file mode 100644
> index 0000000..0ca5dd5
> --- /dev/null
> +++ b/rules/hostapd.make
> @@ -0,0 +1,89 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2013 by Matthias Fend <matthias.fend@wolfvision.com>
> +#
> +# See CREDITS for details about who has contributed to this project.
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_HOSTAPD) += hostapd
> +
> +#
> +# Paths and names
> +#
> +HOSTAPD_NAME   := hostapd
> +HOSTAPD_VERSION        := 2.0
> +HOSTAPD_MD5    := ba22e639bc57aa4035d2ea8ffa9bbbee
> +HOSTAPD                := $(HOSTAPD_NAME)-$(HOSTAPD_VERSION)
> +HOSTAPD_SUFFIX := tar.gz
> +HOSTAPD_URL    := http://w1.fi/releases/$(HOSTAPD).$(HOSTAPD_SUFFIX)
> +HOSTAPD_SOURCE := $(SRCDIR)/$(HOSTAPD).$(HOSTAPD_SUFFIX)
> +HOSTAPD_DIR    := $(BUILDDIR)/$(HOSTAPD)
> +HOSTAPD_SUBDIR := $(HOSTAPD_NAME)
> +HOSTAPD_CONFIG := $(BUILDDIR)/$(HOSTAPD)/$(HOSTAPD_SUBDIR)/.config
> +HOSTAPD_LICENSE        := BSD
> +
> +#
> ----------------------------------------------------------------------------
> +# Prepare
> +#
> ----------------------------------------------------------------------------
> +
> +HOSTAPD_PATH   := PATH=$(CROSS_PATH)
> +#HOSTAPD_CONF_TOOL     := NO
> +HOSTAPD_MAKE_ENV       := \
> +       $(CROSS_ENV) \
> +       LIBDIR=/lib \
> +       BINDIR=/sbin
> +
> +
> +$(STATEDIR)/hostapd.prepare:
> +       @$(call targetinfo)
> +#      # run 'make clean' as hostapd's build system does not recognize
> config changes
> +       @-cd $(HOSTAPD_DIR)/$(HOSTAPD_SUBDIR) && \
> +               $(HOSTAPD_MAKE_ENV) $(HOSTAPD_PATH) $(MAKE) clean
> +
> +       @echo "CC=$(CROSS_CC)"                                          >
>  $(HOSTAPD_CONFIG) && \
> +       echo "CFLAGS += -I$(PTXDIST_SYSROOT_TARGET)/include"            >>
> $(HOSTAPD_CONFIG) && \
> +       echo "CFLAGS += -I$(PTXDIST_SYSROOT_TARGET)/usr/include"        >>
> $(HOSTAPD_CONFIG) && \
> +       echo "LDFLAGS += -L$(PTXDIST_SYSROOT_TARGET)/lib"               >>
> $(HOSTAPD_CONFIG) && \
> +       echo "LDFLAGS += -L$(PTXDIST_SYSROOT_TARGET)/usr/lib"           >>
> $(HOSTAPD_CONFIG)
> +
> +       @grep -e PTXCONF_HOSTAPD_ $(PTXDIST_PTXCONFIG) | \
> +               sed -e 's/PTXCONF_HOSTAPD_/CONFIG_/g' -e 's/\"//g' >>
> $(HOSTAPD_CONFIG)
> +
> +       @$(call touch)
> +
> +#
> ----------------------------------------------------------------------------
> +# Target-Install
> +#
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/hostapd.targetinstall:
> +       @$(call targetinfo)
> +
> +       @$(call install_init, hostapd)
> +       @$(call install_fixup, hostapd,PRIORITY,optional)
> +       @$(call install_fixup, hostapd,SECTION,base)
> +       @$(call install_fixup, hostapd,AUTHOR,"Matthias Fend <
> matthias.fend@wolfvision.com>")
> +       @$(call install_fixup, hostapd,DESCRIPTION,missing)
> +
> +       @$(call install_copy, hostapd, 0, 0, 0755,
> $(HOSTAPD_DIR)/$(HOSTAPD_SUBDIR)/hostapd, /usr/bin/hostapd)
> +
> +       @$(call install_finish, hostapd)
> +
> +       @$(call touch)
> +
> +#
> ----------------------------------------------------------------------------
> +# Clean
> +#
> ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/hostapd.clean:
> +       @$(call targetinfo)
> +       @-cd $(HOSTAPD_DIR) && \
> +               $(HOSTAPD_ENV) $(HOSTAPD_PATH) $(MAKE) clean
> +       @$(call clean_pkg, HOSTAPD)
> +
> +# vim: syntax=make
> --
> 1.7.0.4
>
>
> --
> ptxdist mailing list
> ptxdist@pengutronix.de
>

[-- Attachment #1.2: Type: text/html, Size: 56980 bytes --]

[-- Attachment #2: Type: text/plain, Size: 48 bytes --]

-- 
ptxdist mailing list
ptxdist@pengutronix.de

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2013-07-01  7:14 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-07  8:17 [ptxdist] Building hostapd for PTXdist and an ARM Target Pascal K
2013-05-07  8:28 ` Juergen Beisert
2013-05-07  8:33   ` Pascal K
2013-05-07  8:39     ` Juergen Beisert
2013-05-07  8:51     ` Josef Holzmayr
2013-05-07  8:34 ` Josef Holzmayr
2013-05-07  8:57 ` Matthias Fend
2013-06-28 16:08   ` irfan rafique
2013-07-01  6:45     ` Matthias Fend
2013-07-01  7:14     ` Pascal K
2013-05-07 11:24 Pascal K

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox