summaryrefslogtreecommitdiff
path: root/src/session.ml
AgeCommit message (Collapse)Author
2026-03-04T8313: add copy/rename request handlersJohn Estabrook
2026-03-04T8313: make get_completion_env edit-level awareJohn Estabrook
2025-12-21T8114: check allowed delete path against proposed config, not activeJohn Estabrook
2025-12-19T8091: sanitize path of leaf values for show commandJohn Estabrook
In the context of fixing output on leaf nodes, drop last path component if leaf value is included (as it is not prohibited).
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: make set/delete/show edit-level awareJohn 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-03T7915: catch exceptions and add annotations indicated by alert exnJohn Estabrook
2025-11-03Merge pull request #32 from jestabro/session-managementDaniil Baturin
T7910: add request show_sessions to list all session records
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-08-19T7734: distinguish childless non-leaf nodes in set operationJohn Estabrook
2025-08-19T7728: dynamically generate proposed config from changeset dataJohn Estabrook
2025-08-13T7718: move prune_del_path to Vyos1x.Config_treeJohn Estabrook
2025-08-13T7718: use revised validate_treeJohn Estabrook
2025-08-04T7688: remove tag node path on deletion of last tag node valueJohn Estabrook
2025-07-17T7637: be lenient on redundant/duplicate values for smoketestsJohn Estabrook
Errors Useless_set and Duplicate_value are considered non-critical, as may occur in automation, for example smoketests.
2025-07-06T7499: catch Duplicate_value errorJohn 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-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-12T7272: refactor commit function for clarityJohn Estabrook
2025-04-11T7321: catch Useless_set exceptionJohn Estabrook
2025-04-11T7321: fix typo: do not validate delete pathsJohn 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: add validate_tree for use by load configJohn Estabrook
2025-04-02T7292: update tag/leaf data on set pathsJohn Estabrook
2025-01-14T7046: T6946: make world fields reference_tree, running_config mutableJohn Estabrook
The world data structure is fixed in the main loop, however, it will need updates for dynamic loading of reference tree in the presence of addons, respectively, the running config at completion of commit.
2024-10-27T6718: add independent validate field and methodsJohn Estabrook
2024-10-27T6718: usr refpath to translate config paths to reference tree pathsJohn 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)
2018-05-21Get the show_config operation to work correctly.Daniil Baturin
2018-02-16Implement config reading functions and a minimal command line client for ↵Daniil Baturin
using them. Yes, I hate oversized commits too, but this is hard to avoid sometimes. Adjustments to the Session functions logic required to make it work: Do not try to validate the path. The validation function is geared towards validating _set_ paths, so when path lacks a value, it doesn't work right. We assume that the path has been through set at some point, so if a path currently exists in the config tree, it is also a valid path that can be used for Reference_tree.is_leaf etc.
2018-02-11Rename Util.string_of_path to string_of_list since it can be used for any lists,Daniil Baturin
not just config tree paths. Add analogous function for converting a list of strings to JSON.
2017-01-19Add basic session setup/teardown functionality to vyconfd.Daniil Baturin