Commit graph

105 commits

Author SHA1 Message Date
Ariadne Conill
8e4eb5d00c state: migrate to lif_state_record from a bare dictionary containing the mapped ifs 2020-09-08 14:59:58 -06:00
Ariadne Conill
923b96fab8 state: use lif_next_token() when parsing ifstate files 2020-09-08 14:46:07 -06:00
Ariadne Conill
3b10494b40 change lif_interface.is_up to lif_interface.refcount 2020-09-08 14:41:25 -06:00
Ariadne Conill
ae1dc41c88 lifecycle: constify lif_interface access in several functions 2020-09-07 13:41:11 -06:00
Maximilian Wilhelm
64b24b02ed Remove leading whitespaces before interface attribute values.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-08-30 22:18:07 +02:00
Maximilian Wilhelm
570679c5bf lifecycle: Make sure to return true when script dir doesn't exist.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-08-27 12:10:12 +02:00
Maximilian Wilhelm
61ed18db2c lifecycle: Check if script dir exist before executing run-parts.
Signed-off-by: Maximilian Wilhelm <max@sdn.clinic>
2020-08-27 01:15:51 +02:00
Ariadne Conill
4d64176ea3 execute: note the phase each executor is being invoked in 2020-08-26 02:06:36 -06:00
Ariadne Conill
aefaaa7457 lifecycle: only print skipping interface message if verbose 2020-08-24 11:33:56 -06:00
Ariadne Conill
3997b6a952
Merge pull request #38 from ifupdown-ng/bugfix/vlan-complex
vlan and assorted fixes
2020-08-24 11:14:45 -06:00
Ariadne Conill
de20e5f8a9 lifecycle: handle executors in reverse order when taking an interface down 2020-08-24 11:04:48 -06:00
Ariadne Conill
dfb979d00d list: add LIF_LIST_FOREACH_REVERSE() 2020-08-24 11:03:18 -06:00
Ariadne Conill
aba4b18862 lifecycle: add some helpful debug 2020-08-24 10:36:17 -06:00
Ariadne Conill
68021bc652
Merge pull request #35 from ifupdown-ng/feature/bsearch-parsing
interface config parser rewrite
2020-08-24 04:41:06 -06:00
Ariadne Conill
1384b38c78 interface: use link executor on vlans too 2020-08-24 03:06:32 -06:00
Ariadne Conill
6d15f21073 interface: handle is_bridge and is_bond hacks in a single place 2020-08-20 04:07:51 -06:00
Ariadne Conill
aba140a977 interface-file: use bsearch to find parser functions 2020-08-20 04:04:34 -06:00
Ariadne Conill
4a11d4fdd8 interface-file: break out source keyword handling 2020-08-20 03:46:31 -06:00
Ariadne Conill
df9c0284b1 interface-file: let commands initialize the interface collection themselves 2020-08-20 03:45:56 -06:00
Ariadne Conill
b57aba1a97 interface-file: split out auto keyword handling 2020-08-20 03:41:07 -06:00
Ariadne Conill
d36a522470 interface-file: add and use report_error() 2020-08-20 03:34:59 -06:00
Ariadne Conill
0928f07af5 interface-file: imply static executor use if gateway is specified 2020-08-20 03:20:07 -06:00
Ariadne Conill
e5c592f2c1 remove lif_interface.is_dhcp too 2020-08-20 03:14:57 -06:00
Ariadne Conill
846df3272f remove lif_interface.is_static, no longer used 2020-08-20 03:10:26 -06:00
Ariadne Conill
d463d455da simplify executor use statements 2020-08-20 03:08:29 -06:00
Ariadne Conill
075352b631 interface-file: remap ttl to tunnel-ttl 2020-08-19 06:20:15 -06:00
Ariadne Conill
c24143982f interface-file: map 'mode' to tunnel-mode 2020-08-19 06:19:05 -06:00
Ariadne Conill
9cc74b58c4 interface-file: remap legacy ifupdown & ifupdown2 tunnel parameters 2020-08-19 06:18:40 -06:00
Ariadne Conill
823544aace interface-file: map ppp-provider 2020-08-19 06:03:48 -06:00
Ariadne Conill
cb03eb1ee9 interface-file: remap problematic ifupdown2 tokens to our equivalents 2020-08-19 02:10:54 -06:00
Ariadne Conill
eeb40fc689 libifupdown: move ARRAY_SIZE() declaration from multicall 2020-08-19 01:58:41 -06:00
Ariadne Conill
049af8b9fb interface: if an interface name contains a period, treat it as a vlan device 2020-08-04 12:29:31 -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
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
0ca8e42ee6 refactoring locking, make it per-interface to avoid deadlocks 2020-07-29 03:10:55 -06:00
Ariadne Conill
edfb91c05f lifecycle: separate environment building into build_environment() 2020-07-29 02:24:10 -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