Commit graph

538 commits

Author SHA1 Message Date
Ariadne Conill
8b00727370 interfaces.5: note that we are compatible with legacy ifupdown1 syntax 2020-08-04 12:09:57 -06:00
Ariadne Conill
369f3ff3c2 interfaces.5: document inherit option 2020-08-04 12:08:58 -06:00
Ariadne Conill
49dd8942f2 tests: add inheritance tests
we only need to test ifquery, as this is just a merge
operation.
2020-08-04 12:06:39 -06:00
Ariadne Conill
8615cf62ef interface: properly sync parent-child state when inheriting 2020-08-04 12:01:06 -06:00
Ariadne Conill
df2519c1ec dict: cleanups 2020-08-04 11:59:36 -06:00
Ariadne Conill
0d6b9d5d17 build: fix "ln: file exists" that pops up sometimes 2020-08-04 11:48:55 -06:00
Ariadne Conill
6728d2febe interface: add inherit property when inheriting 2020-08-04 11:48:22 -06:00
Ariadne Conill
6c7fa2919d interface-file: add support for inherit/inherits keyword 2020-08-04 11:46:56 -06:00
Ariadne Conill
3d5ca9050e interface: add lif_interface_collection_inherit() (ref #2) 2020-08-04 11:46:10 -06:00
Ariadne Conill
0eb25f1d62 interface file: simplify scanning iface directives for relevant keywords 2020-08-04 11:32:34 -06:00
Ariadne Conill
1964a99e5d lifecycle: don't insert a requires entry if it would be empty 2020-07-31 17:12:13 -06:00
Ariadne Conill
ed56d2b33b build: actually install ifupdown-executor.7 2020-07-29 03:51:57 -06:00
Ariadne Conill
7a4c16c665 ifupdown-ng 0.5.0. 2020-07-29 03:19:19 -06:00
Ariadne Conill
58bc969bbb ifupdown: only show granular locking errors in verbose mode 2020-07-29 03:18:12 -06:00
Ariadne Conill
ef3bdd79da clean up locking-related errors further 2020-07-29 03:17:12 -06:00
Ariadne Conill
c71c01862d ifupdown: make the locking errors more useful 2020-07-29 03:13:34 -06:00
Ariadne Conill
0ca8e42ee6 refactoring locking, make it per-interface to avoid deadlocks 2020-07-29 03:10:55 -06:00
Ariadne Conill
91115edeee ifupdown: use fcntl advisory locks to serialize state changes (closes #8) 2020-07-29 03:01:49 -06:00
Ariadne Conill
2fecbfc7e9 tests: add tests for learned executors 2020-07-29 02:37:14 -06:00
Ariadne Conill
2be1fa5b0b tests: add a set of more complicated dependency learning tests 2020-07-29 02:33:00 -06:00
Ariadne Conill
edfb91c05f lifecycle: separate environment building into build_environment() 2020-07-29 02:24:10 -06:00
Ariadne Conill
e4c3c4e06e mock dependency generator: add support for mock-depends property 2020-07-29 02:14:42 -06:00
Ariadne Conill
37b5c372f3 doc: add ifupdown-executor(7) manpage (closes #9) 2020-07-29 02:10:31 -06:00
Ariadne Conill
81d0ebc3e8 remove unnecessary strcmp wrapper, use typecasting instead 2020-07-28 17:57:51 -04:00
Ariadne Conill
cfbfa07e85 list: refactor lif_list_free_nodes() a bit 2020-07-28 17:53:48 -04:00
Ariadne Conill
58816712c6
Merge pull request #7 from BarbarossaTM/deduce-use
Deduce which addons to 'use' from parameters names
2020-07-28 17:50:32 -04:00
Maximilian Wilhelm
8045081024 list: Set pointer to free()ed list to NULL.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 23:30:09 +02:00
Maximilian Wilhelm
9d958892ed Free nodes of a lif_dict_find_all() result.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 23:25:01 +02:00
Maximilian Wilhelm
73f3690432 Deduce which addons to 'use' from parameters names (closes #6)
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 22:44:49 +02:00
Maximilian Wilhelm
2420023b74 Add comparator wrapper and type cast values properly.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 22:44:42 +02:00
Maximilian Wilhelm
f51c976b52 dict: Add lif_dict_add_once()
Add a function to add a key/value pair to the dict only if it doesn't exist
  within the dict already.

  As the dict is type agnostic this requires a comparator function to be given.

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 22:44:22 +02:00
Maximilian Wilhelm
b1dfa609f9 dict: Add lif_dict_find_all().
As a dict can have multiple values for any given key we add a function to
  query all occurences of a given key and return them as a (new) list.

Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-07-28 22:41:41 +02:00
Ariadne Conill
cf59f6af4c tests: add ifup/ifdown tests for learned dependencies (close #5) 2020-07-28 14:04:27 -06:00
Ariadne Conill
21bcbe1017 execute: fix memory leak in lif_execute_fmt_with_result() 2020-07-28 13:53:21 -06:00
Ariadne Conill
c97594b89b tests: add test for mock dependency generator 2020-07-28 13:49:08 -06:00
Ariadne Conill
fb5ff4eac2 lifecycle: add support for learning dependents from executors (ref #5) 2020-07-28 13:46:25 -06:00
Ariadne Conill
3a75de9f8c execute: add lif_execute_buf_with_result() to collect a result buffer 2020-07-28 13:01:15 -06:00
Ariadne Conill
3302089d4b tests: add mock-dependency-generator (ref #5) 2020-07-28 12:07:09 -06:00
Ariadne Conill
cb9d347c8a ifupdown-ng 0.4.2. 2020-07-28 10:40:46 -06:00
Ariadne Conill
ef586a6b94 build: allow the packager to configure the executor scripts installed 2020-07-28 09:04:06 -06:00
Ariadne Conill
5b9ade9db8 executors: port @ncopa's bridge scripts to run as a native executor 2020-07-28 08:34:20 -06:00
Ariadne Conill
e1918f3fd5 ifupdown: add --force for compatibility with busybox ifupdown 2020-07-28 08:23:58 -06:00
Ariadne Conill
7af585e738 ifupdown-ng 0.4.1. 2020-07-26 09:33:43 -06:00
Ariadne Conill
8ef2815ef3 link executor: fix pre-up/post-down bug 2020-07-26 07:41:27 -06:00
Ariadne Conill
d88d9b7de4 ifupdown-ng 0.4. 2020-07-26 04:20:47 -06:00
Ariadne Conill
8fb2a0571d make sure VERBOSE is respected in executors 2020-07-26 04:18:57 -06:00
Ariadne Conill
326e27cdb4 executors: static: bring down routes before addresses 2020-07-26 04:13:25 -06:00
Ariadne Conill
83440e3f88 tests: add static executor tests 2020-07-26 04:11:17 -06:00
Ariadne Conill
e3a6e08e40 tests: add dhcp executor tests 2020-07-26 04:00:56 -06:00
Ariadne Conill
d35a3e3b38 tests: add tests for ipv6-ra executor 2020-07-26 03:54:06 -06:00