mirror of
https://github.com/samba-team/samba.git
synced 2024-12-24 21:34:56 +03:00
Updates for CUPS 1.1 from Michael Sweet.
Jeremy.
(This used to be commit 4e76f33869
)
This commit is contained in:
parent
dfcfdf7250
commit
5b45f4a6a6
@ -36,6 +36,7 @@ extern struct in_addr ipzero; /* Any address */
|
|||||||
* Local functions...
|
* Local functions...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
static void list_devices(void);
|
||||||
static struct cli_state *smb_connect(char *, char *, char *, char *, char *);
|
static struct cli_state *smb_connect(char *, char *, char *, char *, char *);
|
||||||
static int smb_print(struct cli_state *, char *, FILE *);
|
static int smb_print(struct cli_state *, char *, FILE *);
|
||||||
|
|
||||||
@ -67,6 +68,18 @@ static int smb_print(struct cli_state *, char *, FILE *);
|
|||||||
argc--;
|
argc--;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (argc == 1)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* NEW! In CUPS 1.1 the backends are run with no arguments to list the
|
||||||
|
* available devices. These can be devices served by this backend
|
||||||
|
* or any other backends (i.e. you can have an SNMP backend that
|
||||||
|
* is only used to enumerate the available network printers... :)
|
||||||
|
*/
|
||||||
|
|
||||||
|
list_devices();
|
||||||
|
return (0);
|
||||||
|
}
|
||||||
|
|
||||||
if (argc < 6 || argc > 7)
|
if (argc < 6 || argc > 7)
|
||||||
{
|
{
|
||||||
@ -216,6 +229,21 @@ static int smb_print(struct cli_state *, char *, FILE *);
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* 'list_devices()' - List the available printers seen on the network...
|
||||||
|
*/
|
||||||
|
|
||||||
|
static void
|
||||||
|
list_devices(void)
|
||||||
|
{
|
||||||
|
/*
|
||||||
|
* Eventually, search the local workgroup for available hosts and printers.
|
||||||
|
*/
|
||||||
|
|
||||||
|
puts("network smb \"Unknown\" \"Windows Printer via SAMBA\"");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 'smb_connect()' - Return a connection to a server.
|
* 'smb_connect()' - Return a connection to a server.
|
||||||
*/
|
*/
|
||||||
@ -321,9 +349,18 @@ smb_print(struct cli_state *cli, /* I - SMB connection */
|
|||||||
int fnum; /* File number */
|
int fnum; /* File number */
|
||||||
int nbytes, /* Number of bytes read */
|
int nbytes, /* Number of bytes read */
|
||||||
tbytes; /* Total bytes read */
|
tbytes; /* Total bytes read */
|
||||||
char buffer[8192]; /* Buffer for copy */
|
char buffer[8192], /* Buffer for copy */
|
||||||
|
*ptr; /* Pointer into tile */
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Sanitize the title...
|
||||||
|
*/
|
||||||
|
|
||||||
|
for (ptr = title; *ptr; ptr ++)
|
||||||
|
if (!isalnum(*ptr) && !isspace(*ptr))
|
||||||
|
*ptr = '_';
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Open the printer device...
|
* Open the printer device...
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user