IPP Everywhere queue (Issues #340, #343)
- Re-added LibreSSL/OpenSSL support (Issue #362)
- Updated the Solaris smf service file (Issue #368)
+- The scheduler now regenerates the PPD cache information after changing the
+ "cupsd.conf" file (Issue #371)
- Updated the scheduler to set "auth-info-required" to "username,password" if a
backend reports it needs authentication info but doesn't set a method for
authentication (Issue #373)
int i, j; /* Looping vars */
char cache_name[1024]; /* Cache filename */
struct stat cache_info; /* Cache file info */
+ struct stat conf_info; /* cupsd.conf file info */
ppd_file_t *ppd; /* PPD file */
char ppd_name[1024]; /* PPD filename */
struct stat ppd_info; /* PPD file info */
* Check to see if the cache is up-to-date...
*/
+ if (stat(ConfigurationFile, &conf_info))
+ conf_info.st_mtime = 0;
+
snprintf(cache_name, sizeof(cache_name), "%s/%s.data", CacheDir, p->name);
if (stat(cache_name, &cache_info))
cache_info.st_mtime = 0;
_ppdCacheDestroy(p->pc);
p->pc = NULL;
- if (cache_info.st_mtime >= ppd_info.st_mtime)
+ if (cache_info.st_mtime >= ppd_info.st_mtime && cache_info.st_mtime >= conf_info.st_mtime)
{
cupsdLogMessage(CUPSD_LOG_DEBUG, "load_ppd: Loading %s...", cache_name);