The dacs virtual filestore
These files are part of the DACS suite.
The virtual filestore provides flexible ways for DACS and software built on top of DACS to obtain information regardless of how or where the information is stored. The DACS core accesses (almost) all configuration information through the virtual filestore layer, allowing information to be more easily shared and maintained, secured, or organized for better performance.
Sometimes it is easiest to store information in a regular file initially, where it can be modified using an ordinary text editor, but after some growth a database might improve performance. In some situations, accessing the information remotely, via HTTP, makes administration more convenient or is more secure. A goal of the virtual filestore is to make it simple to make configuration choices appropriate to a particular DACS environment, and to change them as required. Consult \m[blue]dacsvfs(1)\m\s-2\u\d\s+2 for additional information.
For example, the account file used by \m[blue]dacspasswd(1)\m\s-2\u\d\s+2 and other components is accessed from within DACS through the name passwds (a string called an item type). The DACS configuration in effect determines how this is mapped to an object that contains the account information, how an individual account name is looked up, and where the object is located.
Each virtual filestore instance maps to either an uninterpreted sequence of bytes (e.g., a Unix file or the output of a program) or an object that contains zero or more items, each of which is associated with a key (i.e., the name of an item relative in its virtual filestore context) and has an uninterpreted sequence of bytes as its value (e.g., a database file, a Unix file containing lines having a particular keyword/value structure, or a directory containing regular files).
The \m[blue]VFS\m\s-2\u\d\s+2 directive is used to specify where and how information is stored. Some commands and functions take a VFS specification as an argument to provide a default or override a default.
For maximum portability, a key should be composed of characters from the \m[blue]Portable Filename Character Set\m\s-2\u\d\s+2: any alphanumeric character, period, hyphen, or underscore. The true limitation on the character set depends on the underlying storage scheme and URI syntax constraints. There is no a priori limit on naming context or key length.
Distributed Systems Software (\m[blue]www.dss.ca\m\s-2\u\d\s+2)
Copyright2003-2012 Distributed Systems Software. See the \m[blue]LICENSE\m\s-2\u\d\s+2 file that accompanies the distribution for licensing information.
Portable Filename Character Set