summaryrefslogtreecommitdiff
path: root/src/vyconfd.ml
AgeCommit message (Collapse)Author
2026-03-04T8313: add copy/rename request handlersJohn Estabrook
2025-12-21T8114: check allowed delete path against proposed config, not activeJohn Estabrook
2025-12-17T8061: add get_completion_env requestJohn Estabrook
Return help strings and values in the form used by bash completion.
2025-12-17T8061: add get_path_type requestJohn Estabrook
Get the potential node type of a path, preliminary to any validation of values.
2025-12-17T8061: add reference_path_exists requestJohn Estabrook
Check whether a given config path has a form compatible with the reference tree, irrespective of validity of values.
2025-12-02T8032: add vyconfd handlers for config_unsavedJohn Estabrook
2025-11-20T8009: add vyconfd handlers for edit_level requestsJohn Estabrook
2025-11-10T7988: return difference of running and proposed config for show_configJohn Estabrook
Request show_config returns the format familiar from legacy behavior: a replacement for the config-mode 'show' command.
2025-11-03Merge pull request #32 from jestabro/session-managementDaniil Baturin
T7910: add request show_sessions to list all session records
2025-11-02T7980: cache running config on commit completion and add option to reloadJohn Estabrook
2025-11-01T7980: use write_internal_atomic for running cache and refactorJohn Estabrook
2025-10-22T7910: add request show_sessions to list all session recordsJohn Estabrook
2025-10-22T7910: drop proposed_config field from session recordJohn Estabrook
After the move in T7728 to dynamically generate the session proposed config, the record field can be dropped.
2025-09-15T7737: apply auxiliary set/delete operations to config post-commitJohn Estabrook
2025-09-15T7737: add requests to provide auxiliary set/delete operations on configJohn Estabrook
Occasionally, it is useful to update the config tree _during a commit_ with non-actionable data (meaning data not required for the actions of currently invoked config_mode scripts): the classic example is that of removing the entries of plaintext passwords and adding the encrypted entry. Add the relevent requests and session record field.
2025-09-10T7737: provide session pid, user, sudo_user to vyos-commitdJohn Estabrook
Send vyconfd session pid and client env vars to vyos-commitd for use in config mode scripts.
2025-09-10T7737: add user and sudo_user fields to session for use in commitJohn Estabrook
Add optional protobuf fields to convey environment variables USER and SUDO_USER, as needed for some config_mode scripts. Add non-option fields to the session record type, defaulting to the empty string.
2025-09-10T7737: use pid for lock refJohn Estabrook
The session pid as the lock data makes more sense then the original 'user' field. As we will have use for a session field 'user' elsewhere, make the change now.
2025-09-10T7737: replace unuseful session_update_pid with session_existsJohn Estabrook
The request session_update_pid is not useful, possibly dangerous, in the current design. Remove and add a simple session_exists for use in client initialization.
2025-08-19T7728: dynamically generate proposed config from changeset dataJohn Estabrook
2025-07-06T7499: use direct request to vyconfd to avoid re-validating pathsJohn Estabrook
Merging before passing to the backend results in re-validation of existing paths in the proposed config; this is unavoidable with the legacy backend. For vyconf, send the merge proposal with the request, so validation is only required on new paths.
2025-07-06T7499: allow load from internal representation to avoid re-parsingJohn Estabrook
2025-05-12T7363: add get_config(s) request for Config instance initializationJohn Estabrook
Request cache of session running and proposed configs for loading on intialization of Config instance. As used elsewhere (for example vyos-commitd), this is a much faster method of exchanging information than render and re-parse.
2025-05-12T7352: add option to load legacy config on start for interoperabilityJohn Estabrook
2025-05-12T7363: add session search and update by pidJohn Estabrook
2025-05-12T7363: track process id in session dataJohn Estabrook
In practice, this may be passed in the request as the ppid, as needed for CLI applications to coordinate with the ambient config session. For other uses, the client pid will suffice.
2025-05-12T7363: normalize function naming for auto-generationJohn Estabrook
For auto-generation of Python classes, it is simpler to maintain syntactical consistency; as these operations will be wrapped in any client definitions, verbosity is forgivable.
2025-05-12T7272: refactor commit function for clarityJohn Estabrook
2025-04-11T7321: add session_changed checkJohn Estabrook
2025-04-11T7321: add discard operationJohn Estabrook
2025-04-11T7321: add save config operationJohn Estabrook
2025-04-11T7321: add load config operation: load to proposed configJohn Estabrook
2025-04-11T7321: rename vyconf.proto message Status and enum to avoid collisionJohn Estabrook
The message and enum name Status conflicts with the use in vycall.proto; as the latter has consistency with other (non-conflicting) uses of the term, rename the former.
2025-04-04T7302: add dry_run field and update branchJohn Estabrook
2025-03-31T7272: call both Lwt connections under a single Lwt.mainJohn Estabrook
Call both the vyconfd server and the vyos-commitd client under the top-level Lwt.main loop.
2025-03-31T7292: add commit request client operationsJohn Estabrook
2025-02-06T6946: add test function and executableJohn Estabrook
2025-01-15T7046: add request reload_reftreeJohn Estabrook
2025-01-14T7046: move reftree.cache to unique directoryJohn Estabrook
This will simplify updates of the reference_tree in case of supplemental contributions, say, addon packages.
2024-10-27T6718: drop output of rendered config on startupJohn Estabrook
2024-10-27T6718: handle_connection should close fd on End_of_fileJohn Estabrook
2024-10-27T6718: drop unnecessary reference to file descriptorJohn Estabrook
2024-10-27T6718: fix teardown methodJohn Estabrook
An empty protobuf message does not correctly generate encode/decode functions. This appears to be fixed upstream, but for now, use workaround of adding a reasonable field.
2024-10-27T6718: add independent validate field and methodsJohn Estabrook
2024-10-27T6718: root node now has empty nameJohn Estabrook
The root node name was changed in vyos1x-config (T4491) so as not to conflict with actual nodes named "root".
2024-10-27T6718: restrict directory existence check to validators dirJohn Estabrook
2024-10-27T6718: read reference tree json file on startupJohn Estabrook
2024-10-27T6718: add rule to generate protobuf with name changeJohn Estabrook
Regenerate protobuf files: ocaml-protoc --ml_out src/ data/vyconf.proto The generated files vyconf.* are renamed vyconf_pbt.* instead of the split into vyconf_pb/vyconf_types as in the original implementation.
2024-10-27T6718: reorganize layout for dune build of libs/executablesJohn Estabrook
2024-10-27T6718: update build system, drop batteries, and adjust for lib changesJohn Estabrook
Update as needed for use with contemporary vyos1x-config: . update build system to use dune . drop use of batteries . update for protoc breaking changes in versions >= 3.0 . remove files now in vyos1x-config (config_tree et. al.; parsing)