diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/printing/printfsp.c | 14 | ||||
-rw-r--r-- | source3/smbd/open.c | 2 | ||||
-rw-r--r-- | source3/smbd/reply.c | 2 |
3 files changed, 14 insertions, 4 deletions
diff --git a/source3/printing/printfsp.c b/source3/printing/printfsp.c index 322deadf0f..ea50f43d2e 100644 --- a/source3/printing/printfsp.c +++ b/source3/printing/printfsp.c @@ -27,17 +27,27 @@ open a print file and setup a fsp for it. This is a wrapper around print_job_start(). ***************************************************************************/ -files_struct *print_fsp_open(connection_struct *conn) +files_struct *print_fsp_open(connection_struct *conn, char *fname) { int jobid; SMB_STRUCT_STAT sbuf; extern struct current_user current_user; files_struct *fsp = file_new(conn); + fstring name; if(!fsp) return NULL; - jobid = print_job_start(¤t_user, SNUM(conn), "smb.prn"); + fstrcpy( name, "Remote Downlevel Document"); + if (fname) { + char *p = strrchr(fname, '/'); + fstrcat(name, " "); + if (!p) + p = fname; + fstrcat(name, p); + } + + jobid = print_job_start(¤t_user, SNUM(conn), name); if (jobid == -1) { file_free(fsp); return NULL; diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 589f1a32b4..6a6e22353b 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -632,7 +632,7 @@ files_struct *open_file_shared(connection_struct *conn,char *fname, SMB_STRUCT_S ignored */ *Access = DOS_OPEN_WRONLY; *action = FILE_WAS_CREATED; - return print_fsp_open(conn); + return print_fsp_open(conn, fname); } fsp = file_new(conn); diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 03d0c18942..3233168ffc 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -2504,7 +2504,7 @@ int reply_printopen(connection_struct *conn, } /* Open for exclusive use, write only. */ - fsp = print_fsp_open(conn); + fsp = print_fsp_open(conn, NULL); if (!fsp) { END_PROFILE(SMBsplopen); |