diff options
author | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2011-05-11 05:36:13 +0000 |
---|---|---|
committer | msweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be> | 2011-05-11 05:36:13 +0000 |
commit | eac3a0a01bf37d95f4129b28296cb697c54b2613 (patch) | |
tree | a209bfa09edda04d8a339b869b4d5ce3057d8bbe /scheduler/cups-driverd.cxx | |
parent | 22c9029b44a790ba1ee894027431dcea1ec2aeab (diff) | |
download | cups-eac3a0a01bf37d95f4129b28296cb697c54b2613.tar.gz |
Merge changes from CUPS 1.5svn-r9763.
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@3242 a1ca3aef-8c08-0410-bb20-df032aa958be
Diffstat (limited to 'scheduler/cups-driverd.cxx')
-rw-r--r-- | scheduler/cups-driverd.cxx | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/scheduler/cups-driverd.cxx b/scheduler/cups-driverd.cxx index 2bbc50a21..11b431fb0 100644 --- a/scheduler/cups-driverd.cxx +++ b/scheduler/cups-driverd.cxx @@ -299,7 +299,7 @@ cat_drv(const char *name, /* I - PPD name */ if ((datadir = getenv("CUPS_DATADIR")) == NULL) datadir = CUPS_DATADIR; - // Pull out the + // Pull out the path to the .drv file... if (httpSeparateURI(HTTP_URI_CODING_ALL, name, scheme, sizeof(scheme), userpass, sizeof(userpass), host, sizeof(host), &port, resource, sizeof(resource)) < HTTP_URI_OK || @@ -548,6 +548,7 @@ cat_static(const char *name, /* I - PPD name */ *slash; /* Pointer to next slash */ #endif /* __APPLE__ */ + if (name[0] == '/' || strstr(name, "../") || strstr(name, "/..")) { /* @@ -598,6 +599,7 @@ cat_static(const char *name, /* I - PPD name */ snprintf(line, sizeof(line), "/%s", name); } + else #elif defined(__linux) if (!strncmp(name, "lsb/usr/", 8)) |