Man page - backend(7)

Packages contains this manual

Available languages:

en fr pt de

Manual

backend

NOM
SYNOPSIS
DESCRIPTION
DÉCOUVERTE DES PÉRIPHÉRIQUES
PERMISSIONS
CODE DE RETOUR
ENVIRONNEMENT
FICHIERS
NOTES
NOTES
VOIR AUSSI
COPYRIGHT

NOM

backend - Programme de transmission de CUPS

SYNOPSIS

backend
backend
travail identifiant titre nombre_copies options [ fichier ]

#include <cups/cups.h>

const char *cupsBackendDeviceURI ( char ** argv );

void cupsBackendReport ( const char * schéma_périph ,
const char *
uri_périph ,
const char *
marque_et_modéle_périph ,
const char *
info_périph ,
const char *
id_périph ,
const char *
emplacement_périph );

ssize_t cupsBackChannelWrite ( const char * tampon ,
size_t
octets , double délai );

int cupsSideChannelRead ( cups_sc_command_t * commande ,
cups_sc_status_t *
état , char * données ,
int *
taille_données , double délai );

int cupsSideChannelWrite ( cups_sc_command_t commande ,
cups_sc_status_t
état , const char * données ,
int *
taille_données , double délai );

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 nom de 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. 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. La fonction cupsBackendDeviceURI () peut ĂȘtre utilisĂ©e 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 utilisant la fonction cupsBackChannelWrite .

Les programmes de transmission ont la charge de lire les requĂȘtes des canaux auxiliaires en utilisant la fonction cupsSideChannelRead () et en rĂ©pondant avec la fonction cupsSideChannelWrite() . La constante CUPS_SC_FD prĂ©cise le descripteur de fichier qui sera observĂ© pour de nouvelles requĂȘtes.

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"

La fonction cupsBackendReport () peut ĂȘtre utilisĂ©e pour crĂ©er ces lignes et gĂ©rer les caractĂšres de protection nĂ©cessaires dans les diffĂ©rentes chaĂźnes.

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 tout URI utilisant ce schĂ©ma. Le champ uri_pĂ©riphĂ©rique indique l’URI complet Ă  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 « Inconnu ».

Le champ info_pĂ©riphĂ©rique ajoute des informations Ă  propos du pĂ©riphĂ©rique. GĂ©nĂ©ralement 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 n°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 du pĂ©riphĂ©rique lors de l’ajout d’une imprimante.

PERMISSIONS

Les programmes de transmission sans droit de lecture et 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Ă©, habituellement « lp ».

CODE DE RETOUR

Les codes de retour suivants sont définis pour les programmes de transmission :
CUPS_BACKEND_OK

Le fichier à imprimer a été transmis avec succÚs au périphérique ou au serveur distant.

CUPS_BACKEND_FAILED

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs 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 printer-error-policy .

CUPS_BACKEND_AUTH_REQUIRED

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs 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 de description de tĂąche « job-reasons ».

CUPS_BACKEND_HOLD

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs parce qu’il ne peut pas ĂȘtre imprimĂ© Ă  ce moment. L’ordonnanceur conservera le travail d’impression.

CUPS_BACKEND_STOP

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs parce qu’il ne peut pas ĂȘtre imprimĂ© Ă  ce moment. L’ordonnanceur stoppera la file d’impression.

CUPS_BACKEND_CANCEL

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs 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.

CUPS_BACKEND_RETRY

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs Ă  cause d’un incident temporaire. L’ordonnanceur tentera de relancer la tĂąche plus tard — les autres tĂąches pourraient imprimer avant celle-lĂ .

CUPS_BACKEND_RETRY_CURRENT

Le fichier Ă  imprimer n’a pas Ă©tĂ© transmis avec succĂšs Ă  cause d’un incident temporaire. L’ordonnanceur tentera de relancer la tĂąche immĂ©diatement en empĂȘchant d’autres tĂąches intermĂ©diaires.

Tous les autres codes de retour sont réservés.

ENVIRONNEMENT

En plus des variables d’environnement listĂ©es dans cups (1) et filter (7), les programmes peuvent attendre la variable d’environnement suivante :
DEVICE_URI

L’URI du pĂ©riphĂ©rique associĂ© Ă  l’imprimante.

FICHIERS

/etc/cups/cups-files.conf

NOTES

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 fichier spĂ©cifiques, et sont gĂ©nĂ©ralement lancĂ©s dans une session utilisateur qui (sous macOS) possĂšde des restrictions supplĂ©mentaires et affecte 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 « lp »).

À 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 en utilisant le programme de transmission. La seule exception est le programme de transmission SNMP — voir snmpbackend (8) pour plus d’information.

NOTES

Les pilotes et les programmes de transmission de CUPS sont devenus obsolĂštes et ne seront plus entretenus dans une prochaine publication de CUPS. Les imprimantes qui ne gĂšrent pas IPP peuvent ĂȘtre gĂ©rĂ©es en utilisant des applications telles que ippeveprinter (1).

VOIR AUSSI

cups (1), cups-files.conf (5), cups-snmp (8), cupsd (8), filter (7), lp (1), lpinfo (8), lpr (1),
Aide en ligne de CUPS : <URL: http://localhost:631/help >

COPYRIGHT

Copyright © 2020-2024 by OpenPrinting.