summaryrefslogtreecommitdiff
path: root/src/cstore
AgeCommit message (Collapse)Author
2024-07-03T6527: remove remaining references to PerlJohn 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
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-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.
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
2017-11-01use unique_ptr if gcc is version 6 or higherKim 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-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
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-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-06-03Fix more load/commit memory leaksJohn Southworth
This fixes some more of the memory leaks in load and commit. Some still exist in the legacy cli_new/cli_parse code. Since that code is supposed to be rewritten such that it interfaces with the rewritten commit code in a clean way, these will not be fixed right now.
2012-03-22Bugfix 7267: make inodes allocate dynamicallyJohn Southworth
2011-10-24Add VarRef translation to the allowed field for config modeJohn Southworth
2011-07-29Fix build on older gccStephen Hemminger
Incorrect use of #ifdef. Gcc major version is in __GNUC__
2011-07-29Merge branch 'oxnard' of git.vyatta.com:/git/vyatta-cfg into oxnardJohn Southworth
2011-07-29Bugfix 2823: Configuration mode command interpreter, output adjustments for ↵John Southworth
consistency
2011-07-29Fix build of config backend on Glibc 4.6Stephen Hemminger
Bug 7188 The problem is that vyatta cfg backend is using internals of c++ templates (in std::tr1) and these will change between versions of glibc. Workaround by adding necessary conditional compilation
2011-07-25Bugfix 7362: Make some adjustments to previous patch per An-Cheng's suggestionsJohn Southworth
2011-07-23Oops, should have been false by default.John Southworth
2011-07-23Bugfix 7362: Make reset_paths reset to root level when resolving varrefsJohn Southworth
2011-07-15Bugfix 7331: better fix for the bugJohn Southworth
(cherry picked from commit fdac525b7596f1b18c201bdcd5923d3e76453ebd)
2011-07-15Don't allow users to set migration commentsJohn Southworth
(cherry picked from commit 9f1ff5427e0f72f2bded287be6e1d4cf442945cb)
2011-06-15Bugfix 6767: Move log files from /tmp to /var/log/vyatta.Bob Gilligan
2011-05-20update comment, fix typo, etc.An-Cheng Huang
2011-05-18correct comment file handling in copy and minor cleanup.An-Cheng Huang
2011-05-17add var ref "bug" to maintain backward compatibility.An-Cheng Huang
2011-05-17reimplement commit lockingAn-Cheng Huang
2011-05-17minor feature etc.An-Cheng Huang
* add commit notification. * fix relative VAR references that traverse up to root level.
2011-05-16tweak directory handling for unionfsAn-Cheng Huang