Closes#930
- Make targets to download wiki pages of each service
- Add post-processor script for DocBook file processing
Signed-off-by: Joseph Nuthalapati <njoseph@thoughtworks.com>
Reviewed-by: James Valleroy <jvalleroy@mailbox.org>
- Very similar to configuration of IPv4 networks.
- Supports 'auto', 'dhcp', 'manual' and 'ignored' modes as supported by
network manager. 'shared' mode is not yet implemented by network
manager.
Network manager's libnm throws a critical message for when accessing DNS
entries from IPv4 configuration when there are none available. See the
number of entries available before accessing them.
Select the frequency band (2.4 GHz vs. 5 GHz) is a prerequisite for
selecting the channel. Channel selection is useful primarily as follow:
- Restrict to a particular access point when multiple access points use
the same SSID (AP name) but are available on different frequencies.
- Configure for a particular ad-hoc mesh network.
- Setup multiple access points from a single FreedomBox on multiple
channels to maximize the throughput and number of simultaneous
clients.
Ability to specify a particular BSSID will help associate with a
particular access point when multiple access points use the same
SSID (AP name). This is also makes it slightly harder to trick clients
into connection to a malicious device. Also configuring BATMAN-adv
seems to require setting a particular BSSID.
After batman-adv kernel driver takes over the Wi-Fi network interface
and provides a bat0 interface, this interface shows up as device type
'batadv'. This type is not recognized by network manager is dealt with
as a generic device. Configuring this device for IPv4/IPv6 in
auto/shared mode etc. works fine. So, add the ability to configure
generic interfaces.
- Make connection adding/editing forms inherit from base.
- Make the forms responsible for extracting cleaned data.
- Use dictionaries for passing around settings values while
adding/editing connections.
* fixed IP configuration
* set up a new ipv4settings object to avoid the need of reseting all the values
* extended Static IP configuration:
* allow configuration of netmask (optional)
* allow configuration of Gateway (optional)
* allow configuartion of two DNS Servers (optional)
* extend DHCP configuration:
* allow configuration of user specific DNS Server
* DHCP provided DNS Servers will be ignored in that case
- Fix showing configured IP address in edit form.
- Combine the retrival functions and organize them according to where
the information is being retrived from connection/device/active
connection/access point.
- Add more fields to show such as ether speed, default ipv4/ipv6
connection, wifi mode, etc.
- Re-format the page. Separate ipv4/ipv6 sections. Separate device
information and connection information sections.
- Take the action buttons to the top.
- Make the activate/deactivate button work with new POST only CSRF
requirement.
- Update Firewall zone description messages.
- Show all IP addresses of the device.
Add access points found on a particular Wi-Fi device only to that device
as it is not gauranteed that other Wi-Fi devices will be able to find
them. For example, an access point operating in 5 GHz frequency will
only be found and used by Wi-Fi devices capable for 5 GHz communication.
- When selecting an existing WiFi on the "scan" page, the user will be redirected to the "WiFi add" form.
This form did not contain a WiFi capable Interface as default selection, for this reason the user get a
invalid form message when entering the form.
- Added some generic network helper functions to global network helper class
to get some information from a device by it's name. This is used when editing
a connection (no ip was shown before).
- ToDo:
This is only a workaround because we want to get the information from the connection but not from the device
which belongs to the connection. If multiple connections are setup on the same device, this workaround will not
work anymore.
- implemented network status page which supports:
* show IP address and netmask
* show MAC address
* show device name
* show firewall zone name
* show DNS server information
* show default gateway
* show wifi information
* shows if connection is shared or not and if connection is the default connection
- when clicking on a cennection on the overview page go to the status page, not to the
editing page
- ToDo: if connection is disabled and re-enabled again, no information are visible anymore (Bug)
When trying to edit connection of unknown type show an error and return
to connections list instead of trying to filling in some fields and
doing badly.
- Retrieve password using connection.get_secrets() instead of
settings_pppoe.get_password().
- Make sure IPv4 settings are not accessed during PPPoE editing.
* Added a new choice to main selectbox for adding Network Connections (network.py)
* Added a new form which asks for name, interface, firewall zone, username and password (forms.py, urls.py)
* Added new helper functions to create PPPoE based connection object (network.py)
- Fetch network interfaces list at the time of form creation instead of
during definition.
- Add help text to interfaces list choice field.
- Don't write an explict check for requiring interface
selection. required=True, which is default, takes care of that.
- Internationalize the empty selection text.
- Update the empty selection text.
- Re-order interface parameter in the same order of priority/appearance.
- Make network-manager package get installed when accessing the index page of
networks. Also freedombox-setup shold actually pull network-manager package
as dependency and use it for configuring the initial networks.
- Remove the /connect page and re-use the /add_wifi page for that purpose.
- Fix add connection page titles.
- Handle the case when network-manager returned empty string for SSID.
- Don't explictly URL encode the Wi-Fi SSID when adding a new Wi-Fi network.
Django automatically handles this in 'url' tag and decodes before url
routing. Relax the regex that matches SSID as part of the URL to handle all
possible SSIDs.
- Name for a network connection is not unique. UUIDs are much less likely to
change compared to name of the connection. No necessity to perform URL
encoding too.
- Move UI error message strings to view module instead of the network module
for proper separation.
- Minor refactoring.