Provided by: cups-daemon_1.7.2-0ubuntu1.11_amd64 

NOM
backend - Programme de transmission de CUPS.
SYNOPSIS
backend
backend travail utilisateur titre copies options [ fichier ]
DESCRIPTION
Les programmes de transmission de CUPS sont des filtres particuliers (consultez filter(7) qui sont
utilisés pour envoyer les données à imprimer et découvrir les différents périphériques d'impression du
système.
Comme les filtres, ils doivent être capables de lire depuis un fichier fourni sur la ligne de commande ou
depuis l'entrée standard, en copiant l'entrée standard vers un fichier temporaire si nécessaire pour
l'interface physique.
Le nom de la commande (argv[0]) est défini à la valeur de l'URI du périphérique de l'imprimante de
destination. À partir de la version 1.1.22 de CUPS, toute information d'identification est retirée de
argv[0], les développeurs des programmes de transmission devraient utiliser la variable d'environnement
DEVICE_URI pour obtenir les informations d'identification quand cela est nécessaire. L'API CUPS propose
la fonction cupsBackendDeviceURI pour récupérer la valeur correcte de l'URI du périphérique.
Les données en retour du périphérique doivent être envoyées au filtre des travaux en écrivant sur le
descripteur de fichiers 3. L'API CUPS propose la fonction cupsBackChannelWrite pour cela.
WARNING
Les programmes de transmission de CUPS ne sont généralement pas conçus pour être lancés directement par
l'utilisateur. À côté du problème lié à l'adresse URI du périphérique (argv[0] et la variable
d'environnement DEVICE_URI contiennent l'adresse URI du périphérique), les programmes de transmission de
CUPS attendent également des variables d'environnement et descripteurs de fichiers spécifiques, et sont
généralement lancés dans une session utilisateur qui (sous OS X) possède des restrictions supplémentaires
qui affectent la façon dont ils fonctionnent. Les programmes de transmission peuvent également être
installés avec des droits limités (0500 ou 0700) qui informent l'ordonnanceur de les lancer avec les
droits du superutilisateur au lieu d'un utilisateur système non privilégié (comme « lpr »).
À moins que vous ne soyez développeur, ou que vous sachiez ce que vous faites, veuillez ne pas lancer les
programmes de transmission directement. À la place vous pouvez utiliser les programmes lp(1) ou lpr(1)
pour envoyer un travail d'impression ou le programme lpinfo(8) pour demander quelles imprimantes
disponibles utilisent le programme de transmission. La seule exception est le programme de transmission
SNMP - voir snmpbackend(8) pour plus d'information.
DÉCOUVERTE DES PÉRIPHÉRIQUES
Quand il est exécuté sans paramètre, le programme de transmission doit afficher sur la sortie standard
les périphériques et schémas qu'il gère ou qu'il annonce. La sortie consiste en zéro ou plus de lignes de
la forme suivante :
classe_périphérique schéma "Unknown" "info_périphérique"
classe_périphérique URI_périphérique "marque_et_modèle_périphérique" "info_périphérique"
classe_périphérique URI_périphérique "marque_et_modèle_périphérique" "info_périphérique" "id_périphérique"
classe_périphérique URI_périphérique "marque_et_modèle_périphérique" "info_périphérique" "id_périphérique" "emplacement_périphérique"
Le champ classe_périphérique peut prendre une de ces valeurs :
direct
L'URI du périphérique se réfère à un accès direct au périphérique, sans option, comme pour un
périphérique sur port parallèle, USB ou SCSI.
file
L'URI du périphérique se réfère à un fichier sur le disque.
network
L'URI du périphérique se réfère à un périphérique réseau et respecte les formes générales des URI
réseau.
serial
L'URI du périphérique se réfère à un périphérique série avec une vitesse configurable et d'autres
options. Si l'URI du périphérique contient la vitesse, elle représente la vitesse maximale gérée par
le périphérique.
Le champ schéma fournit le schéma d'URI géré par le programme de transmission. Les programmes de
transmission ne doivent utiliser cette forme que s'ils gèrent toute URI utilisant ce schéma. Le champ
uri_périphérique indique l'URI complète à utiliser pour la communication avec le périphérique.
Le champ marque_et_modèle_périphérique précise la marque et le modèle du périphérique, par exemple
« Exemple Foojet 2000 ». Si la marque et le modèle ne sont pas connus, vous devez indiquer « Unknown ».
Le champ info_périphérique ajoute des informations à propos du périphérique. Typiquement cela comprend la
marque et le modèle avec le numéro de port ou l'adresse réseau, par exemple « Exemple Foojet 2000 USB
#1 ».
Le champ optionnel id_périphérique indique l'identifiant IEEE-1284 du périphérique, qui est utilisé pour
sélectionner le pilote correspondant.
Le champ optionnel emplacement_périphérique indique l'emplacement physique du périphérique, qui est
utilisé la plupart du temps pour pré-remplir l'emplacement périphérique lors de l'ajout d'une imprimante.
PERMISSIONS
Les programmes de transmission sans droit d'exécution pour tout le monde sont exécutés en tant que
superutilisateur. Sinon, le programme de transmission est exécuté en utilisant un compte non privilégié,
généralement « lp ».
CODES DE RETOUR
Les programmes de transmission renvoient les codes de retour suivants (les constantes définies par l'API
C dans <cups/backend.h> sont indiquées entre parenthèses) :
0 (CUPS_BACKEND_OK)
Le fichier à imprimer a été transmis avec succès au périphérique ou au serveur distant.
1 (CUPS_BACKEND_FAILED)
Le fichier à imprimer n'a pas été transmis correctement au périphérique ou au serveur distant.
L'ordonnanceur réagira en annulant le travail, réessayant l'impression ou en stoppant la file
d'impression en fonction de l'état de l'attribut error-policy.
2 (CUPS_BACKEND_AUTH_REQUIRED)
Le fichier à imprimer n'a pas été transmis correctement parce que des données d'identification
valables sont nécessaires. L'ordonnanceur réagira en suspendant le travail, et en ajoutant le mot
clé « cups-held-for-authentication » à l'attribut « job-reasons ».
3 (CUPS_BACKEND_HOLD)
Le fichier à imprimer n'a pas pu être transmis parce qu'il ne pouvait pas être imprimé à ce moment.
L'ordonnanceur conservera le travail d'impression.
4 (CUPS_BACKEND_STOP)
Le fichier à imprimer n'a pas été transmis car il ne peut pas être imprimé en ce moment.
L'ordonnanceur stoppera la file d'impression.
5 (CUPS_BACKEND_CANCEL)
Le fichier à imprimer n'a pas été transmis parce qu'un attribut n'est pas géré ou le travail a été
annulé à l'imprimante. L'ordonnanceur répond à cela en annulant le travail d'impression.
6 (CUPS_BACKEND_RETRY)
Le fichier à imprimer n'a pas pu être transmis à cause d'un incident temporaire. L'ordonnanceur
retentera de lancer la tâche plus tard — les autres tâches pourraient imprimer avant celle-là.
7 (CUPS_BACKEND_RETRY_CURRENT)
Le fichier à imprimer n'a pas pu être transmis à cause d'un incident temporaire. L'ordonnanceur
retentera de lancer la tâche immédiatement en empêchant d'autres tâches d'intervenir.
Tous les autres codes de retour sont réservés.
VOIR AUSSI
cups-snmp(8), cupsd(8), cupsd.conf(5), filter(7), lpinfo(8),
<URL:http://localhost:631/help>
COPYRIGHT
Copyright 2007-2013 par Apple Inc.
23 avril 2012 CUPS backend(7)