print_status_struct *pstatus);
WERROR print_job_start(struct auth_serversupplied_info *server_info,
struct messaging_context *msg_ctx,
+ const char *clientmachine,
int snum, const char *docname, const char *filename,
struct spoolss_DeviceMode *devmode, uint32_t *_jobid);
void print_job_endpage(struct messaging_context *msg_ctx,
WERROR print_job_start(struct auth_serversupplied_info *server_info,
struct messaging_context *msg_ctx,
+ const char *clientmachine,
int snum, const char *docname, const char *filename,
struct spoolss_DeviceMode *devmode, uint32_t *_jobid)
{
struct tdb_print_db *pdb = get_print_db_byname(sharename);
int njobs;
WERROR werr;
- const char *clientname;
- char addr[INET6_ADDRSTRLEN];
if (!pdb) {
return WERR_INTERNAL_DB_CORRUPTION;
fstrcpy(pjob.jobname, docname);
- clientname = client_name(smbd_server_fd());
- if (strcmp(clientname, "UNKNOWN") == 0) {
- clientname = client_addr(smbd_server_fd(),addr,sizeof(addr));
- }
- fstrcpy(pjob.clientmachine, clientname);
+ fstrcpy(pjob.clientmachine, clientmachine);
fstrcpy(pjob.user, lp_printjob_username(snum));
standard_sub_advanced(sharename, server_info->sanitized_username,
return WERR_BADFID;
}
- werr = print_job_start(p->server_info, p->msg_ctx, snum,
+ werr = print_job_start(p->server_info, p->msg_ctx,
+ p->client_id->name, snum,
info_1->document_name, info_1->output_file,
Printer->devmode, &Printer->jobid);