summaryrefslogtreecommitdiffhomepage
path: root/libs
AgeCommit message (Collapse)Author
2012-08-09libs/sys: remove _parse_delimitted_table() and incorperate /etc/config/dhcp ↵Jo-Philipp Wich
leases into mac_hints()
2012-08-08libs/sys: remove wifi.channels()Jo-Philipp Wich
2012-08-08libs/sys: remove wifi.getiwconfig() and wifi.getiwscan()Jo-Philipp Wich
2012-08-08libs/sys: introduce net.mac_hints(), net.ipv4_hints() and net.ipv6_hints() ↵Jo-Philipp Wich
functions to obtain lists of peers from various sources (e.g. ethers, leases, arp cache)
2012-08-08libs/web: add missing css class to cbi simpleform templateJo-Philipp Wich
2012-08-08libs/web: adapt dispatcher to sauth api changesJo-Philipp Wich
2012-08-08libs/web: rework luci.sauthJo-Philipp Wich
- perform decoding/encoding transparently in read() and write() - remove decode() and encode() helpers - introduce reap() to kill expired sessions
2012-08-07Rework authentication systemJo-Philipp Wich
The validity of authentication tokens was determined by the mtime of respective authentication tokens on filesystem stored in $sessionpath. Talking about hardware without RTC or without a prior connection to a time server, date/time usually around 1970 - so is the mtime of the authentication token file in $sessionpath. When now configuring an internet connection via LuCI, the system might fetch the current date/time (e.g. via ntp) which invalidates the token, returns "403 Forbidden" and kicks the user out of the interface. This patch changes the authentication system to use time values based on the uptime of the machine - rather than values based upon gettimeofday() and {a|m}time values - and save them inside the token. That way can always determine the difference between login (last interaction respectively) and the current time, in- dependant of the system clock jumping backwards/forwards. Warning: This patch removes the clean() function and respective calls. This means, invalid tokens will NOT be determined and removed from filesystem automatically anymore. Before, every HTTP-call caused a scan for invalid tokens, which is quite expensive. Instead consider using a cron job deleting all stalled files periodically. Contributed by T-Labs, Deutsche Telekom Innovation Laboratories Signed-off-by: Mirko Vogt <mirko@openwrt.org>
2012-07-24libs/web: support creating networks in checkbox network widget (#457)Jo-Philipp Wich
2012-07-18libs/sys: workaround broken entries in /proc/net/ipv6_route, observed on ↵Jo-Philipp Wich
brcm-2.4
2012-06-29libs/core: only consider enabled routes when finding wan interfaceJo-Philipp Wich
2012-06-27libs/sys: fix login with empty password after previous commitJo-Philipp Wich
2012-06-27libs/sys: fix luci.sys.checkpasswd() semanticsJo-Philipp Wich
2012-06-26libs/core: improve luci.util.imatch() to not create temporary strings when ↵Jo-Philipp Wich
iterating non-string values
2012-06-26libs/core: implement get_wandev(), get_wan6dev(), get_wannet() and ↵Jo-Philipp Wich
get_wan6net() in luci.model.network
2012-06-26libs/core: fix network is_empty() check for wifi-ifaces which are part of ↵Jo-Philipp Wich
multiple networks
2012-06-26libs/web: extend network_ifacelist widget to display all networks an iface ↵Jo-Philipp Wich
is member of
2012-06-26libs/core: allow ifaces to be part of multiple networks in luci.model.networkJo-Philipp Wich
2012-06-25libs/web: implement minlength(), maxlength() and rangelength() datatypesJo-Philipp Wich
2012-06-17libs/core: fix various problems in the network modelJo-Philipp Wich
2012-05-31libs/core: fix ubus corner cases in network modelJo-Philipp Wich
2012-05-31libs/core: use ubus to fetch interface and device status information, depend ↵Jo-Philipp Wich
on libubus-lua
2012-05-06move luci specific index.html from package 'sgi-cgi' to 'admin-core'Jo-Philipp Wich
Contributed by T-Labs, Deutsche Telekom Innovation Laboratories Signed-off-by: Mirko Vogt <mirko.vogt@external.telekom.de>
2012-05-06libs/sys: fix luci.sys.init.index() (#399)Jo-Philipp Wich
2012-04-16Fix JSON NaNJo-Philipp Wich
Hi, The attached patch fixes the JSON generation when dealing with NaN (not a number), this makes the JSON parsing in the web browser succeed (before it would get a "nan" which is not a valid JS value) Chris
2012-04-15libs/web: fix html output for complex datatypes containing apostrophesJo-Philipp Wich
2012-04-15libs/sys: introduce luci.sys.init.start() and luci.sys.init.stop(), also ↵Jo-Philipp Wich
execute all init action with an empty environment
2012-04-13libs/datatypes: Fix typoManuel Munz
2012-03-13libs/nixio: reorder linker commandline args to fix build on Ubuntu 11.xJo-Philipp Wich
2012-03-13libs/nixio: disable TLS implementation by default, fixes host builds on ↵Jo-Philipp Wich
Ubuntu 11.x
2012-03-04libs/web: fix wrong default focus in dynlist widgets (#388)Jo-Philipp Wich
2012-02-15libs/web: fix delete action in tblsections, fix extedit buttonsJo-Philipp Wich
2012-02-15libs/web: remove inline styles from firewall_zoneforwards and ↵Jo-Philipp Wich
firewall_zonelist widgets
2012-02-15libs/web: remove inline styles from network_netinfo widgetJo-Philipp Wich
2012-02-15libs/web: remove inline styles for interface badgesJo-Philipp Wich
2012-02-15libs/web: remove more inline styles from tblsection template, fixes action ↵Jo-Philipp Wich
buttons in bootstrap theme
2012-02-15libs/web: use new button classes for tblsection templateJo-Philipp Wich
2012-02-15libs/web: fix firewall_zoneforwards template for bootstrap themeJo-Philipp Wich
2012-02-14libs/web: implement new phone digit datatype, useful for VoIP related config ↵Jo-Philipp Wich
screens
2012-02-14libs/web: use CSS class for sort buttons, drop inline styleJo-Philipp Wich
2012-02-14libs/web: fix invalid html after r8224 - the whitespace trimming removed the ↵Jo-Philipp Wich
space between the attributes
2012-02-13libs/web: fix line wrapping errorPatrick Grimm
2012-02-12libs/web: replace <a href> by <input type=button> for better css style in tablesPatrick Grimm
2012-01-09[PATCH] Explicit Cache-Control for lucid.http static contentJo-Philipp Wich
The Chrome web browser revalidates every resource if no explicit Cache-Control or Expires HTTP/1.1 header is sent. This makes the page loads appear to take a long time on pages with a few external resources, adding 300-500ms per item. This includes the XHR json responses that set page images, like wireless signal indicators and the like-- the images are revalidated on every XHR response. As an example, the Network -> Interfaces page generates 16 requests to the lucid http server: Main HTML cascade.css xhr.js tabbg.png cbi.js loading.gif ethernet_disabled.png reload.png reset.gif edit.gif remove.gif add.gif bridge.png vlan.png wifi.png iface_status Of those, 14 should be pulled from cache but they are all valdiated. The lucid server returns the correct 304 (Not Modified) responses but it delays the apparent page load time because of the backlog it creates at the http server. I would suggest setting explicit cache control on all files returned by the lucid http directory dispatcher. The "Expires" header is reportedly more widely supported, however this relies on the clock on the OpenWrt? system being accurate, which may not be the case. The "Cache-Control: max-age=" allows the server to set a timeout in seconds. I've included a patch that sets revalidate interval to 1 year, which is the value recommended by google. Reference: http://code.google.com/speed/page-speed/docs/caching.html Note this could create an issue if there are luci application which are generating files which change that are being served by the lucid http DirectoryPublisher?. I'm not sure if there is anyone doing that. If needed, this can probably be created as an option to the DirectoryPublisher? config stanza for each vhost. Finally, this only affects the Google Chrome browser, as both IE9 and Firefox seem to have their own revalidation interval in the absence of explicit cache control which may be based on the last modified time of the resource. Even in Chrome, this change doesn't take effect until the item is re-served with a 200 HTTP response so Chrome's cache should be cleared after this patch is applied. The patch can be extended to include cache control on 304 responses, but I'd not worry about cluttering the code with it because the problem will solve itself once chrome redownloads the resource.
2012-01-08libs/web: remove debugging codeJo-Philipp Wich
2012-01-08libs/web: allow zero-length string literals when parsing datatypesJo-Philipp Wich
2012-01-08libs/web: introduce recursive expression support for datatypes, introduce ↵Jo-Philipp Wich
"or" and "and" datatypes The commit adds a recursive parser for datatype expressions which allows nesting of validators, this allows for complex expressions like "list(or(range(0,65535),'infinite'))" to allow a list of values which are either integers between 0 and 65535 or the literal string "inifinite". That change also deprecates combined datatypes like "ipaddr" ["or(ip4addr,ip6addr)"] or "host" ["or(hostname,ip4addr,ip6addr)"]
2012-01-07libs/web: remove neg_ipaddr, neg_ip4addr and neg_network_ip4addr datatypes, ↵Jo-Philipp Wich
can be represented with neg(type)
2012-01-01libs/core: remove various uses of global vars in luci.ipJo-Philipp Wich
2011-12-20libs/core: rework luci.model.uci.apply() to return the commandline as table, ↵Jo-Philipp Wich
suitable for passing to nixio.exec()