environment variables if the libraries are called from setuid or setguid
programs, or if kernel believes that the process is not eligible to create
a core dump. In addition, if the libc has __secure_getenv(), use it so that
the libc can also do any additional limitations regarding when libraries can
trust environment variables (i.e., to integrate with systems like SELinux
and Posix capabilities).
1) Only one tag with a particular name can be attached to a device
at a time. This significantly simplifies the library, and was needed
to allow the cache file to be re-read and changes integrated into the
in-core version of the data structure in a simpler fashion than earlier
versions of the library.
2) To accomodate this, the ext2/ext3 filesystems are now always tagged
as "ext2" type filesystems. Ext3 filesystems are tagged with a
SEC_TYPE tag with the value ext3.
3) The new blkid_read_cache() function checks the mod time of the
cache file, and if the file has been changed since the last time the
cache file was read into memory, it is re-read. This function is now
called before probing all of the devices in the system or searching
all devices in the cache for a specific tag value.
4) After probing all devices, blkid_flush_cache() is called to write
out the cache file. This assures that all of the hard work involved
in doing a blkid_probe_all() is saved to disk.