/*
- * "$Id: cups-deviced.c 7816 2008-07-30 20:53:31Z mike $"
+ * "$Id$"
*
- * Device scanning mini-daemon for the Common UNIX Printing System (CUPS).
+ * Device scanning mini-daemon for CUPS.
*
- * Copyright 2007-2008 by Apple Inc.
+ * Copyright 2007-2011 by Apple Inc.
* Copyright 1997-2006 by Easy Software Products.
*
* These coded instructions, statements, and computer programs are the
{
for (i = 0; i < num_backends; i ++)
if (backend_fds[i].revents && backends[i].pipe)
- if (get_device(backends + i))
+ {
+ cups_file_t *bpipe = backends[i].pipe;
+ /* Copy of pipe for backend... */
+
+ do
{
- backend_fds[i].fd = 0;
- backend_fds[i].events = 0;
+ if (get_device(backends + i))
+ {
+ backend_fds[i].fd = 0;
+ backend_fds[i].events = 0;
+ break;
+ }
}
+ while (bpipe->ptr &&
+ memchr(bpipe->ptr, '\n', bpipe->end - bpipe->ptr));
+ }
}
/*
if ((diff = cupsdCompareNames(d0->device_info, d1->device_info)) != 0)
return (diff);
- else if ((diff = strcasecmp(d0->device_class, d1->device_class)) != 0)
+ else if ((diff = _cups_strcasecmp(d0->device_class, d1->device_class)) != 0)
return (diff);
else
- return (strcasecmp(d0->device_uri, d1->device_uri));
+ return (_cups_strcasecmp(d0->device_uri, d1->device_uri));
}
snprintf(program, sizeof(program), "%s/backend/%s", server_bin, name);
+ if (_cupsFileCheck(program, _CUPS_FILE_CHECK_PROGRAM, !geteuid(),
+ _cupsFileCheckFilter, NULL))
+ return (-1);
+
backend = backends + num_backends;
argv[0] = (char *)name;
/*
- * End of "$Id: cups-deviced.c 7816 2008-07-30 20:53:31Z mike $".
+ * End of "$Id$".
*/