summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2024-10-23T6717: memory management of alloced return valuesJohn Estabrook
The ctypes binding makes a copy of the string return value; the originating C memory allocation needs to be explicitly managed.
2024-10-23T6717: split validate and set functionsJohn Estabrook
Separate the application of validators from the cstore update.
2024-10-23T6717: add redirect_stdoutJohn Estabrook
Legacy set/delete methods write errors to stdout; capture for redirection in return value.
2024-10-23T5528: add adapter interfaceJohn Estabrook
Expose legacy set/delete functions in a form suitable for external calls.
2024-07-03T6527: remove remaining references to PerlJohn Estabrook
2024-04-09configdep: T6206 fix marker for last element of delete priority queueskhramshinr
related task: T5660: add marker for last element of priority queues
2024-02-28configdep: T5660: add marker for last element of priority queuesJohn Estabrook
2023-05-29T5234: add bash prompt identifier for given Network NamespaceChristian Breunig
2023-05-21T5234: add bash prompt identifier for given VRF instanceChristian Breunig
2023-02-13debian: T5003: Fixes for GCC in Debian 12 "Bookworm"sarthurdev
Fixes compile error: void operator delete(void*, std::size_t)' called on pointer returned from a mismatched allocation function
2023-02-09commit: T4990: call sync after the commit completesDaniil Baturin
2022-09-05cstore: T4664: add validation: no whitespace in tag node value namesJohn Estabrook
2022-08-13Fallthrough to binstream copy when copy_file failsRageLtMan
Kernel 5.15, and probably newer, present an EXEDEV error when the vyatta-cfg code tries to boost::filesystem::copy_file on UnionFS FUSE mounts. This completely breaks operation on newer kernels, and is therefore a blocker to the rest of the project moving on to new Linux LTS versions. Boost is complex and fraught, this code behaves inconsistently in verious operating environments, and can be a nightmare to debug. Handle the concerns above using binary streaming in C++ to copy the source to the destination if an exception occurs during the existing Boost copy_file operation. Testing: Built ISO (cloud target), packer install, booted in OpenStack on KVM, booted in AWS on Xen, verified configurations are committed in both cases and that error logs are being generated to inform users about the fall-through being utilized to write-out configurations. Notes: Logging may be dropped to avoid flooding storage on often-updated systems. It is left in-place to aid developers in debugging the root concern underpinning Boot breakage (which may impact other areas of the code).
2022-05-16vyos-debug: T4394: extend profiling supportVolodymyr Huti
1. Use chrono library instead of basic C library to improve accuracy 2. Introduce the tracing helpers 3. Add tracing calls to the main processing points NOTE: loger is writing to the stdout, and for bootloader it is redirected to - /var/log/vyatta/vyos-boot-config-loader.log
2020-08-31configd: T2582: leave marker to indicate beginning of commitJohn Estabrook
2020-05-04T1899: fix for unionfs-fuse rename of meta directoryJohn Estabrook
In release v1.0 of unionfs-fuse, the meta directory was renamed from .unionfs to .unionfs-fuse. Consequently, the clean up of the directory following a commit vacuously succeeds, and the meta data remains. On a subsequent commit, this hidden directory will be copied into the tmp directory structure. As permissions on the whiteout files belong solely to the user, commit actions in a multiuser environment may encounter permission errors, leading to a failure in commit. Change the meta directory name here to accord with the change in unionfs-fuse, but beware that the change is reverted in release v2.0 of unionfs-fuse.
2020-02-11T2026: use unique exit codes for commit errors.Daniil Baturin
2020-02-11T2026: use a unique exit code for config parse errors.Daniil Baturin
2020-02-10T2026: make cli-shell-api showConfig fail on errors.Daniil Baturin
2019-05-30T1334: Migration script runner rewriteJohn Estabrook
Use vyos-1x migration script runner.
2019-03-21T1310: use FQDN as hostname in config promptChristian Poessinger
2019-02-28T1273: add rudimentary script profiling support.Daniil Baturin
2019-01-11T1068: Increase Max CMD Outputxrpixer
2018-10-28T253: quote tag node names if they contain special characters.Daniil Baturin
2017-11-01use unique_ptr if gcc is version 6 or higherKim Hagen
2017-11-01ignore return statements warnings/errors, maybe we should do something with ↵Kim Hagen
the return codes?
2017-11-01only do "g_type_init()" if version is 2.35.0Kim Hagen
2017-11-01replace deprecated auto_ptr for unique_ptrKim Hagen
2017-10-25fix compilation errorKim
2017-10-25try not to tear down session on bootKim
2017-08-28fix compilation errors on newer gccKim Hagen
2015-12-17Fix the reversed sort order for nodes.Thomas Jepp
2015-12-17Go back to using the apt version comparison for node sorting.Thomas Jepp
2015-12-17Replace dpkg version comparisions with strcmp.Thomas Jepp
2015-12-16More fixes to cstore-unionfs & cli_shell_api.Thomas Jepp
2015-11-23Build fixes for updated libraries on Jessie.Thomas Jepp
2015-10-10vyatta-cfg: double quoted config values ending in \ are not reboot safeAlex Harpin
Configurations that contain double quoted values that ended in \ were causing parse errors on load / reboot, resulting in a failure to load the config file and an empty config. This commit adds extra logic to the lex parsing of the config file to catch this particular case whilst still allowing escaped quotes in the middle of quoted values. Bug #593 http://bugzilla.vyos.net/show_bug.cgi?id=593
2015-07-07vyatta-cfg: remove unused unionfs mounts following unclean config exitsAlex Harpin
If a configuration session is exited uncleanly, either as a result of a network disconnect / timeout or other forced quit from within config mode, the unionfs mount is left in place. These remain until the system is rebooted, giving an error when unmounting the config directory. This commit checks for old configuartion directories when a user enters config mode, removing any found that are owned by that user but not part of any active configuration seesion. Bug #564 http://bugzilla.vyos.net/show_bug.cgi?id=564
2015-06-26vyatta-cfg: correct UnionfsCstore::do_umount error messageAlex Harpin
2015-01-11vyatta-cfg: fix for "failed to generate commited config"Alex Harpin
When changes are made to the system by more than one user, only the first user after a reboot is able to commit successfully, the others fail with "Failed to generate committed config". This is caused as a result of the underlying unionfs-fuse mount used for the system configuration and the fact that a .unionfs directory if left in the active configuration with permissions set such that only the original committing user can change them. Bug #403 http://bugzilla.vyos.net/show_bug.cgi?id=403
2014-04-30Removed dirty workaround for fuse completely.Kim Hagen
Use Build-iso to create /etc/fuse.conf file. Use pipe(),fork(),execl() functions instead of system() function to call unionfs-fuse.
2014-03-10Add umount functions for unionfs-fuse.Daniil Baturin
2014-03-10Import and adapt Kim Hagen's changes for union-fs support.Daniil Baturin
2013-01-07Fix compiler warningsJames Davidson
2012-09-12Fix a few completion bugsJohn Southworth
1. Bugfix 8254: Show the help text first so users don't think there is only one completion for a value when it exists with non-comps 2. Fix config mode inconsistencies with operational mode. Show all values in help text. 3. Fix "exists_only" command handling. Only show nodes that exist when doing completion for show, comment, and delete.
2012-09-04Add cstore_cfg_path_exists_effective C interfaceJames Davidson
2012-07-13Restore original lock file semanticsStephen Hemminger
Don't fail if lock file already exists
2012-07-11Minor code cleanupStephen Hemminger
1. Make local functions static 2. Use C standard for function with no-args versus old K&R style 3. Make some arguments const
2012-07-11Don't leak file descriptors to actionStephen Hemminger
Bug 8204 Make sure we don't handle unnecessary file descriptors to child processes. This is done by marking file descriptors as close on exec, and closing pipe before exec.
2012-07-11Log node of commit failureStephen Hemminger
Bug 8192 Put message in log about failed node