Jukka Rissanen
bd6189aef0
main: Remove obsolete -S option
...
As there is no handler for -S option, we can remove it.
2015-01-26 21:53:55 -06:00
Jukka Rissanen
9c380ad95c
main: DBus debug option -B was missing
...
It was not possible to activate DBus debugging.
2015-01-26 21:53:30 -06:00
Denis Kenzior
5247695d56
mpdu: fix transaction_sequence byte-ordering
...
transaction_sequence was not being considered in host CPU byte order
2015-01-22 12:41:10 -06:00
Denis Kenzior
e60b814dc8
mpdu: algorithm was not swapped to host byte-order
2015-01-22 12:41:10 -06:00
Tomasz Bursztyka
8f946c0cdc
eapol: Change function signatures
...
The frame which comes in is an EAPoL-key frame, thus changing the name
accordingly (as well as the parameter names).
Also, returning the cast pointer instead of a boolean is easier to
use as there won't be any need to perform the cast ourselves afterward
2015-01-22 12:18:17 -06:00
Tomasz Bursztyka
e02f02fa69
mpdu: Change the validation function signature
...
What comes in is a frame, and let's set it to uint8_t pointer, which is
semantically better than unsigned char.
Also, returning the cast pointer instead of a boolean is easier to
use as there won't be any need to perform the cast ourselves afterward
2015-01-22 12:14:47 -06:00
Tomasz Bursztyka
55d3283aeb
mpdu: Add member 'ies' for mpdu_deauthentication
...
Even if this will never really be useful, it's better this way rather
than having a todo comment.
2015-01-21 14:37:27 -06:00
Tomasz Bursztyka
3d5fe2fddd
mpdu: Validate beacon mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame
2015-01-21 14:31:26 -06:00
Tomasz Bursztyka
9ce1745ede
mpdu: Validate timing advertisement mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame
2015-01-21 14:30:51 -06:00
Tomasz Bursztyka
8078f18c35
mpdu: Validate probe response mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame
2015-01-21 14:30:12 -06:00
Tomasz Bursztyka
cc1cc64843
mpdu: Validate probe request mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame
2015-01-21 14:29:39 -06:00
Tomasz Bursztyka
142a6a8a0c
mpdu: Validate reassociation response mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame
2015-01-21 14:29:05 -06:00
Tomasz Bursztyka
efcaefc5dd
mpdu: Validate reassociation request mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame.
2015-01-21 14:28:21 -06:00
Tomasz Bursztyka
8353ac445d
mpdu: Validate association response mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame.
2015-01-21 14:28:14 -06:00
Tomasz Bursztyka
5c9f1db01f
mpdu: Validate association request mpdu subtype
...
We do not currently validate the IEs that are following until the end
of the frame.
2015-01-21 14:28:07 -06:00
Tomasz Bursztyka
d1c29daa24
mpdu: Validate disassociation mpdu subtype
...
These own a reason code which is currently the only interesting
information to handle. Let's skip the vendor specific ones for now.
2015-01-21 14:27:59 -06:00
Tomasz Bursztyka
e106033fce
mpdu: Validate ATIM mpdu subtype
...
ATIM management frames have an empty body.
2015-01-21 14:27:38 -06:00
Denis Kenzior
c3aef948db
mpdu: Update offset for authentication frames
...
Offset was not updated properly when validating authentication frames
2015-01-21 14:25:07 -06:00
Denis Kenzior
8a4e135bc8
ie: Add parsine of Group Management Cipher field
2015-01-20 00:30:54 -06:00
Denis Kenzior
e5574d031d
ie: Parse PMKIDs in RSN IE
2015-01-19 23:26:45 -06:00
Jukka Rissanen
275d067123
wiphy: Use l_memdup instead of l_malloc and memcpy
...
Converting l_malloc() and memcpy() function pairs to use new
l_memdup() function.
2015-01-16 10:54:54 -06:00
Jukka Rissanen
7ec9c468f5
wiphy: Express SSID as an array of chars
...
Handle SSIDs as if they would contain up to 32 octets of opaque data.
2015-01-16 10:54:28 -06:00
Denis Kenzior
02170b200f
ie: Decode RSNE Capabilities field
2015-01-15 23:59:19 -06:00
Denis Kenzior
e90ca652fd
util: Add util_is_bit_set
2015-01-15 23:59:18 -06:00
Denis Kenzior
56f1ccf7f2
util: Add util_bit_field
2015-01-15 23:59:18 -06:00
Denis Kenzior
2be20e6644
ie: Add RSNE parser that works on raw data
2015-01-15 23:59:18 -06:00
Denis Kenzior
2d8f1cca0b
ie: Add initial parser for RSN Elements
...
As found in 802.11 Section 8.4.2.27. Currently the parser does not
handle the Capabilities, Group Management Cipher Suite or PMKID related
fields.
2015-01-15 23:59:18 -06:00
Denis Kenzior
2b7432bddb
ie: Add utility to parse pairwise cipher suites
...
This utility works by validating values that make sense for pairwise
ciphers.
2015-01-15 23:59:18 -06:00
Denis Kenzior
4216cf793b
ie: Add utility to parse group cipher suites
...
This utility works by validating values that make sense for group
ciphers.
2015-01-15 23:59:18 -06:00
Denis Kenzior
d8583424e8
ie: Add utility to parse key management suites
2015-01-15 23:59:18 -06:00
Denis Kenzior
20a02eba6a
ie: Add utility to parse RSN cipher suites
2015-01-15 23:59:18 -06:00
Denis Kenzior
c3e9e2fc9b
ie: Add ie_rsn_akm_suite enum
...
Using values from Table 8-101
2015-01-15 23:59:18 -06:00
Denis Kenzior
155a1f169a
ie: Add ie_rsn_cipher_suite enum
...
Using values from Table 8-99
2015-01-15 23:59:18 -06:00
Jukka Rissanen
cb78798857
scan: Refactor scan result fetching to scan.c
...
No functionality changes by this commit.
2015-01-12 23:09:31 -06:00
Jukka Rissanen
f73708e1d7
scan: Refactor scheduled scan code to scan.c
...
Move the implementation details of triggering scheduled wifi scans
over netlink to scan.c from wiphy.c. No functionality is affected
by this commit.
2015-01-12 23:09:31 -06:00
Jukka Rissanen
35d0c519d7
scan: Refactor scan start details to scan.c
...
Move the implementation details of triggering wifi scans over netlink
to scan.c from wiphy.c. No functionality is changed by this commit.
2015-01-12 23:09:31 -06:00
Marcel Holtmann
78d21c782c
crypto: Use proper form for making a structure packed
2014-12-28 06:50:51 +01:00
Marcel Holtmann
f25b1442ff
core: Fix output buffer length handling of prf_sha1() function
2014-12-28 06:49:39 +01:00
Denis Kenzior
52ee52f467
crypto: Make packed
2014-12-27 23:35:40 -06:00
Marcel Holtmann
016f701a91
core: Fix handling of digest size argument for all HMAC hash functions
2014-12-28 06:33:44 +01:00
Denis Kenzior
096165d142
eapol: Add eapol_calculate_mic
2014-12-27 23:04:14 -06:00
Denis Kenzior
27d25efc0b
eapol: Add eapol_create_ptk_2_of_4
2014-12-27 23:04:12 -06:00
Denis Kenzior
dc3331a98d
eapol: Add eapol_process_ptk_2_of_4
2014-12-27 22:58:22 -06:00
Denis Kenzior
996e32bf1d
eapol: Add eapol_process_ptk_1_of_4
2014-12-27 22:58:22 -06:00
Denis Kenzior
5e7771ef66
crypto: Add crypto_derive_pairwise_ptk
2014-12-27 22:34:39 -06:00
Denis Kenzior
1c4e3bc774
crypto: Make const correct
2014-12-27 22:34:39 -06:00
Denis Kenzior
dab93ef14a
crypto: Update comment
2014-12-27 22:34:39 -06:00
Denis Kenzior
f647e03166
crypto: Add crypto_cipher_tk_bits
2014-12-27 22:34:39 -06:00
Denis Kenzior
07c8876d9e
crypto: Add crypto_cipher_key_len
2014-12-27 22:34:39 -06:00
Denis Kenzior
0693740731
crypto: Add crypto_derive_ptk
2014-12-27 22:34:39 -06:00
Denis Kenzior
da8e10cc5f
eapol: Verify key_descriptor_version
2014-12-27 22:34:39 -06:00
Denis Kenzior
5da6ca89e4
eapol: Add eapol_verify
2014-12-27 22:34:39 -06:00
Marcel Holtmann
1ee81e5854
core: Add support for AES-CMAC hashing function
2014-12-27 23:21:10 +01:00
Marcel Holtmann
872c0e803a
core: Add support for HMAC SHA256 helper function
2014-12-27 06:58:28 +01:00
Marcel Holtmann
b615a6f4e0
core: Add support for HMAC MD5 helper function
2014-12-27 06:44:04 +01:00
Jukka Rissanen
08d31e3b1b
wiphy: Fixes due to nl80211.h changes
2014-12-22 11:48:26 -06:00
Denis Kenzior
7cf4f7b100
eapol: Add a couple of missing fields
2014-12-19 15:45:17 -06:00
Denis Kenzior
e3729cc0f5
eapol: Fix typo
2014-12-19 14:25:57 -06:00
Denis Kenzior
7b6d8b54cd
mpdu: Fix bitfield use on big endian
2014-12-19 12:26:41 -06:00
Denis Kenzior
2cc842a302
eapol: Add beginnings of EAPoL utilities
2014-12-18 18:10:10 -06:00
Patrik Flykt
bf25abf38d
util: Add SSID to UTF8 pretty-print function
...
Use a static buffer for converting an SSID to an approximate string in
UTF8. Replace each char that is not UTF8 compatible with the UTF8
replacement symbol.
2014-12-18 11:06:48 -06:00
Denis Kenzior
b22f93203c
mpdu: Rework to a zero-copy based framework
2014-12-17 17:44:44 -06:00
Denis Kenzior
d7b6a36db8
mpdu: Rework structure definitions
...
The current setup was not endian safe
2014-12-17 16:22:06 -06:00
Denis Kenzior
3ef0ff1e1a
mpdu: Fix invalid read
...
The cast was being done incorrectly resulting in invalid values being
obtained
2014-12-17 16:21:05 -06:00
Denis Kenzior
ca742bb95d
mpdu: Fix style
2014-12-16 16:57:30 -06:00
Denis Kenzior
b0af0177ac
mpdu: Replace for loop with memcpy
2014-12-16 14:26:33 -06:00
Denis Kenzior
61a44dd485
mpdu: Fix style
2014-12-16 14:23:36 -06:00
Denis Kenzior
6a011f0d92
mpdu: Simplify checks
2014-12-16 14:22:13 -06:00
Denis Kenzior
002290998e
mpdu: Add x-ref in comments for struct definitions
2014-12-16 14:21:18 -06:00
Tomasz Bursztyka
805619fc9d
core: Add the preliminary logic to parse 802.11 MPDUs
...
It currently focuses on parsing management frames, and specifically its
authentication and deauthentication frames.
2014-12-16 10:53:20 -06:00
Denis Kenzior
d2218e81c9
dbus: Fix style
2014-12-12 09:52:12 -06:00
Jukka Rissanen
c5b5d4502b
dbus: Add helper to append a byte array
...
Needed when appending SSID into properties.
2014-12-12 09:51:55 -06:00
Denis Kenzior
d87d7d469f
crypto: Add passphrase generation utility
2014-11-14 21:41:28 -06:00
Jukka Rissanen
d0cb0aedc6
wiphy: Check return value when appending attributes
...
Make sure to print some errors if attributes cannot be appended
to a message. It is dangerous to ignore the return code from
l_genl_msg_append_attr() because the kernel might act weirdly
if some attribute is missing.
2014-11-12 08:10:58 -06:00
Jukka Rissanen
fcda15c587
wiphy: Scheduled scan startup message was too short
...
The length needs to be at least 20 bytes so that the third
attribute fits in.
2014-11-12 08:09:25 -06:00
Denis Kenzior
ad86c91b38
wiphy: Fix memory leak
...
Whenever we find an existing BSS, we should free the old object since it
is being removed from the old_bss_list via l_queue_remove_if
2014-11-07 22:44:30 -06:00
Denis Kenzior
333b28bf3a
main: Add --dbus-debug command line parameter
2014-11-07 22:44:30 -06:00
Denis Kenzior
4dc24025a4
dbus: Add enable_debug parameter to dbus_init
2014-11-07 22:44:30 -06:00
Denis Kenzior
9de7c92429
wiphy: Remove unneeded wiphy_set_ssid function
2014-11-07 22:44:27 -06:00
Denis Kenzior
ca5f5b2e2b
main: Remove unneeded ssid command line argument
2014-11-07 21:37:09 -06:00
Jukka Rissanen
672be730c3
wiphy: Add scheduled scan support
...
Add rudimentary support for mac80211 scheduled scan feature.
This is done so that kernel support for task called "Bind
NL80211_CMD_START_SCHED_SCAN to netlink socket" from TODO
file can be tested. The current scan interval is set to 60
seconds which is probably too fast for the final version.
2014-11-07 20:42:11 -06:00
Denis Kenzior
ca18b395e2
wiphy: Fix valgrind complaint
...
The network list must be destroyed before the BSS list as that is used
inside network_free
2014-11-05 08:29:33 -06:00
Denis Kenzior
84765ac4db
wiphy: Add GetNetworks method
2014-11-03 15:37:08 -06:00
Denis Kenzior
e7bd2276de
wiphy: Make const correct
2014-11-03 15:36:52 -06:00
Denis Kenzior
2f852d2954
wiphy: Add missing signals to introspection
2014-11-03 15:24:34 -06:00
Denis Kenzior
3cf47d4109
manager: Add missing signals to introspection
2014-11-03 15:24:12 -06:00
Denis Kenzior
8e3a17cf56
wiphy: Add rudimentary Connect method
2014-10-30 00:27:06 -05:00
Denis Kenzior
e51cac7f74
wiphy: Fix uninitialized var warnings
2014-10-30 00:26:49 -05:00
Denis Kenzior
5b2e34b5b6
wiphy: add network_emit_removed
2014-10-30 00:09:29 -05:00
Denis Kenzior
0d59e91a2b
wiphy: Add network_emit_added
2014-10-30 00:09:16 -05:00
Denis Kenzior
3a8eb753a3
wiphy: Expose rudimentary network information
2014-10-30 00:01:52 -05:00
Denis Kenzior
621a2a003d
dbus: Add Network Interface #define
2014-10-29 23:58:36 -05:00
Denis Kenzior
64e9ad91ed
wiphy: Track bss as a network object in a hashmap
2014-10-29 23:20:43 -05:00
Denis Kenzior
b484197470
wiphy: Keep track of seen BSS
2014-10-29 22:50:27 -05:00
Denis Kenzior
39fde81dba
wiphy: Refactor get_scan
2014-10-28 11:15:26 -05:00
Denis Kenzior
6917824be9
wiphy: refactor parse_bss
2014-10-28 11:04:31 -05:00
Denis Kenzior
0a71163c3f
wiphy: Add Scan() method
2014-10-28 09:43:36 -05:00
Denis Kenzior
d2f61dd0cd
dbus: Add dbus_error_failed
2014-10-27 23:42:59 -05:00
Denis Kenzior
96a139d15b
dbus: add dbus_error_busy
2014-10-27 23:42:43 -05:00
Denis Kenzior
4639c31d61
dbus: Add dbus_pending_reply
2014-10-27 23:42:05 -05:00
Denis Kenzior
051f49ea85
wiphy: Tweak netdev structure creation order
...
Because none of the attributes are assigned until after the DeviceAdded
signal is emitted, the signal appears with invalid properties. For now,
move the netdev structure fill-out into the if statement.
If the netdev attributes can change, then these need to be handled
separately and appropriate signals to be sent.
2014-10-23 22:44:59 -05:00
Denis Kenzior
77255dbee0
manager: Implement GetDevices method
2014-10-23 22:41:45 -05:00
Denis Kenzior
2d6babc3f8
wiphy: Expose iwd_device_get_path
2014-10-23 22:40:32 -05:00
Denis Kenzior
2d6a50bb27
wiphy: add __iwd_device_foreach
2014-10-23 21:47:38 -05:00
Denis Kenzior
c13103974c
wiphy: Expose Name property of netdevs
2014-10-23 20:29:36 -05:00
Denis Kenzior
9ba3cc408e
wiphy: Add __iwd_device_append_properties
2014-10-23 16:53:36 -05:00
Denis Kenzior
1ff34e3f0f
dbus: add dbus_dict_append_bool
2014-10-23 16:53:34 -05:00
Denis Kenzior
c550fb01f9
dbus: add dbus_dict_append_string
2014-10-23 16:53:31 -05:00
Denis Kenzior
28f33d210d
wiphy: add skeleton for DeviceAdded signal
2014-10-23 15:11:17 -05:00
Denis Kenzior
daa0b6768f
wiphy: add DeviceRemoved signal implementation
2014-10-23 15:11:01 -05:00
Denis Kenzior
4a4d094d8e
wiphy: Add device_get_path() utility
2014-10-23 15:09:52 -05:00
Denis Kenzior
ae95cbd172
dbus: Use a #define for IWD_MANAGER_PATH
2014-10-23 15:07:08 -05:00
Denis Kenzior
852072e836
dbus: Move Device interface #define to dbus.h
2014-10-23 14:34:17 -05:00
Denis Kenzior
6437e5ae92
dbus: Move Manager Interface #define to dbus.h
2014-10-23 14:34:13 -05:00
Denis Kenzior
f9363748f0
wiphy: Expose netdevs to DBus
2014-10-23 14:32:12 -05:00
Denis Kenzior
09c29ba3e2
manager: Add manager skeleton
2014-10-06 22:13:40 -05:00
Denis Kenzior
5bea86e47b
dbus: Add dbus-daemon policy configuration
2014-10-06 22:13:40 -05:00
Denis Kenzior
429ea08202
dbus: Add basic D-Bus plumbing
2014-10-06 22:13:37 -05:00
Marcel Holtmann
70bc082d41
core: Make Kernel D-Bus setup optional
2014-08-09 10:59:48 -07:00
Marcel Holtmann
dfc059d757
core: Send MLME associate request when authenticated
2014-08-09 00:01:22 -07:00
Marcel Holtmann
966a58d67f
core: Send MLME authenticate request when SSID is found
2014-08-08 23:45:15 -07:00
Marcel Holtmann
0aabd9744d
core: Parse scan results and store BSS information when SSID matches
2014-08-08 23:23:56 -07:00
Marcel Holtmann
9c7c23ce90
core: Trigger initial passive scan when SSID is provided
2014-08-08 22:21:30 -07:00
Marcel Holtmann
c13d50fab9
core: Add command line option to provide SSID
2014-08-08 22:19:47 -07:00
Marcel Holtmann
1ab85bdbe5
core: Add command line options support to daemon
2014-08-08 21:54:03 -07:00
Marcel Holtmann
218e38aa87
core: Store feature flags of wiphy devices
2014-08-07 15:41:30 -07:00
Marcel Holtmann
c9b3adbbcf
core: Request current regulatory setting when starting up
2014-08-07 13:23:02 -07:00
Marcel Holtmann
a17584e680
core: First command should be to read protocol features
2014-08-07 13:13:31 -07:00
Marcel Holtmann
b7a421673c
core: Add sanity check to sync RTNL link deletion with nl80211
2014-08-06 23:52:42 -07:00
Marcel Holtmann
46b9f4a0a8
core: Subscribe to all nl80211 multicast groups
2014-08-06 23:52:08 -07:00
Marcel Holtmann
442ba2412d
core: Add network interface to beginning of list
2014-08-06 23:51:25 -07:00
Marcel Holtmann
f400e9dd44
core: Request list of all network interfaces
2014-08-07 06:27:32 +02:00
Marcel Holtmann
af2bb68e07
core: Only enable RTNL debugging when IWD_RTNL_DEBUG is set
2014-08-07 05:28:58 +02:00
Marcel Holtmann
32c415e4e8
core: Track wiphy devices and its network interfaces
2014-08-07 05:15:20 +02:00
Marcel Holtmann
d04ecde554
core: Only enable netlink debugging when IWD_GENL_DEBUG is set
2014-08-07 01:06:51 +02:00
Marcel Holtmann
34d8b0d308
ie: Keep copyright notice the same for all source files
2014-08-03 08:14:16 +02:00
Jukka Rissanen
b90d914a3f
ie: Adding IE builder support
...
These functions can be used to create IE TLV messages.
2014-07-31 09:58:58 -05:00
Marcel Holtmann
999ba12f31
core: Add skeleton for nl80211 setup
2014-07-29 21:25:01 +02:00
Jukka Rissanen
61245bc14e
ie: Adding function to recurse when reading
...
This function is needed when building recursive IE.
2014-07-15 19:19:04 -05:00
Denis Kenzior
119a1e7de3
ie: Add additional boundary checking
...
==20758== Invalid read of size 1
==20758== at 0x401254: ie_tlv_iter_next (ie.c:55)
==20758== by 0x40104B: ie_test (test-ie.c:57)
==20758== by 0x4021C0: l_test_run (test.c:83)
==20758== by 0x4011B7: main (test-ie.c:123)
==20758== Address 0x51e10f3 is 0 bytes after a block of size 19 alloc'd
==20758== at 0x4C2C874: realloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==20758== by 0x4010CF: append_data (test-ie.c:101)
==20758== by 0x40118F: main (test-ie.c:119)
==20758==
==20758== Invalid read of size 1
==20758== at 0x401266: ie_tlv_iter_next (ie.c:56)
==20758== by 0x40104B: ie_test (test-ie.c:57)
==20758== by 0x4021C0: l_test_run (test.c:83)
==20758== by 0x4011B7: main (test-ie.c:123)
==20758== Address 0x51e10f4 is 1 bytes after a block of size 19 alloc'd
==20758== at 0x4C2C874: realloc (in
/usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==20758== by 0x4010CF: append_data (test-ie.c:101)
==20758== by 0x40118F: main (test-ie.c:119)
2014-07-15 19:18:08 -05:00
Jukka Rissanen
458ac1aba4
ie: Simple informational element parser
...
The parsing API goes through the byte stream and parses the
TLV (Type, Length and Value) values and avoids data copying.
2014-07-15 19:18:08 -05:00
Jukka Rissanen
eedadd860b
ie: Add information element types
...
IE types are from IEEE Std 802.11 chapter 8.4.2
2014-07-15 15:45:03 -05:00
Marcel Holtmann
43f91eb168
core: Fix a few compiler warnings
2014-07-15 22:29:02 +02:00
Marcel Holtmann
188917cc29
core: Add missing include for network interface tracking
2014-06-21 20:54:58 +02:00
Marcel Holtmann
37cba460a8
core: Add tracking of network interfaces via RTNL
2014-06-21 13:41:40 +02:00
Marcel Holtmann
78379fc673
core: Limit the kdbus attach flags to useful ones
2014-05-21 22:44:31 -07:00
Marcel Holtmann
edc067abf1
core: Use PRIu64 format modifier for printing uint64 variables
2014-05-21 22:43:38 -07:00
Marcel Holtmann
51d5e77b8a
core: Print debug information for kdbus connections
2014-05-20 23:36:56 -07:00
Marcel Holtmann
f299d96e77
core: Open the private bus connection and acquire name
2014-05-20 23:07:49 -07:00
Marcel Holtmann
f3b9d44be7
core: Add kdbus helpers for connections and well known names
2014-05-20 23:06:56 -07:00
Marcel Holtmann
bf7c041b47
core: Add support for creating private bus
2014-05-20 21:44:13 -07:00
Marcel Holtmann
632be0730a
core: Add kdbus helper functions for bus creation and lookup
2014-05-20 21:42:35 -07:00
Marcel Holtmann
abf1eb9494
build: Move nl80211.h public header to separate directory
2014-05-20 19:51:36 -07:00
Marcel Holtmann
b0cb247d23
build: Add copy of kernel nl80211.h public header
2014-05-11 18:08:33 -07:00
Marcel Holtmann
4fb291c2a9
core: Use full include path for local headers
2014-05-11 16:22:13 -07:00
Marcel Holtmann
422fb5ad08
core: Add SHA-1 versions of PBKDF2 and PRF functions
2014-05-11 11:43:42 -07:00
Marcel Holtmann
050539e2e3
core: Add skeleton for main daemon
2014-05-11 11:01:11 -07:00