summaryrefslogtreecommitdiff
path: root/source3/printing
AgeCommit message (Collapse)AuthorFilesLines
2007-10-10r14221: Fix coverity #76. My previous change wasn't quite enough :-).Jeremy Allison1-0/+1
Jeremy. (This used to be commit 21b70035f39973e9edff323219c3c7eeb1550e2b)
2007-10-10r14184: Coverity fix #56. Ensure we can't deref null.Jeremy Allison1-1/+1
Jeremy. (This used to be commit c76092a0662714b49c3c519d6f01174b8995a036)
2007-10-10r14023: My last bug fix still left a potential null deref.Jeremy Allison1-8/+9
C- "must try harder" :-). Jeremy. (This used to be commit 9c55bf74ca28530045c5cb3cbfffad242039ca75)
2007-10-10r14003: Clarify code that lead to Coverity report #13.Jeremy Allison2-13/+16
Not a bug, but better to remove false positives. Jeremy. (This used to be commit f9a75d76546bc4618736f0d48646e77d7572db25)
2007-10-10r13915: Fixed a very interesting class of realloc() bugs found by Coverity.Jeremy Allison4-56/+23
realloc can return NULL in one of two cases - (1) the realloc failed, (2) realloc succeeded but the new size requested was zero, in which case this is identical to a free() call. The error paths dealing with these two cases should be different, but mostly weren't. Secondly the standard idiom for dealing with realloc when you know the new size is non-zero is the following : tmp = realloc(p, size); if (!tmp) { SAFE_FREE(p); return error; } else { p = tmp; } However, there were *many* *many* places in Samba where we were using the old (broken) idiom of : p = realloc(p, size) if (!p) { return error; } which will leak the memory pointed to by p on realloc fail. This commit (hopefully) fixes all these cases by moving to a standard idiom of : p = SMB_REALLOC(p, size) if (!p) { return error; } Where if the realloc returns null due to the realloc failing or size == 0 we *guarentee* that the storage pointed to by p has been freed. This allows me to remove a lot of code that was dealing with the standard (more verbose) method that required a tmp pointer. This is almost always what you want. When a realloc fails you never usually want the old memory, you want to free it and get into your error processing asap. For the 11 remaining cases where we really do need to keep the old pointer I have invented the new macro SMB_REALLOC_KEEP_OLD_ON_ERROR, which can be used as follows : tmp = SMB_REALLOC_KEEP_OLD_ON_ERROR(p, size); if (!tmp) { SAFE_FREE(p); return error; } else { p = tmp; } SMB_REALLOC_KEEP_OLD_ON_ERROR guarentees never to free the pointer p, even on size == 0 or realloc fail. All this is done by a hidden extra argument to Realloc(), BOOL free_old_on_error which is set appropriately by the SMB_REALLOC and SMB_REALLOC_KEEP_OLD_ON_ERROR macros (and their array counterparts). It remains to be seen what this will do to our Coverity bug count :-). Jeremy. (This used to be commit 1d710d06a214f3f1740e80e0bffd6aab44aac2b0)
2007-10-10r13622: Allow to rename machine accounts in a Samba Domain. This still uses theGünther Deschner1-2/+4
"rename user script" to do the rename of the posix machine account (this might be changed later). Fixes #2331. Guenther (This used to be commit b2eac2e6eb6ddd1bcb4ed5172e7cd64144c18d16)
2007-10-10r13547: add earlier checks to deny deleting a printer driver. The previousGerald Carter1-0/+5
code relied upon file permissions alone. Now we check that the user is a printer administrator and that the share has not been marked read only for that user. (This used to be commit 117d9fd9e16a7afbc6772506a4f8c33ff99d33f7)
2007-10-10r13408: Remove C++ comments (# 3494)Günther Deschner1-2/+2
Guenther (This used to be commit cf86d4c9f0c48e7234945694a4722c35dd33657c)
2007-10-10r13316: Let the carnage begin....Gerald Carter2-5/+11
Sync with trunk as off r13315 (This used to be commit 17e63ac4ed8325c0d44fe62b2442449f3298559f)
2007-10-10r13293: Rather a big patch I'm afraid, but this should fix bug #3347Jeremy Allison3-16/+17
by saving the UNIX token used to set a delete on close flag, and using it when doing the delete. libsmbsharemodes.so still needs updating to cope with this change. Samba4 torture tests to follow. Jeremy. (This used to be commit 23f16cbc2e8cde97c486831e26bcafd4ab4a9654)
2007-10-10r12889: BUG 3380: fix crash when changing printer drivers caused by ↵Gerald Carter1-0/+2
accessing a previously freed pointer (This used to be commit bcce3b69f83f52deb308d8c2f5165000468bd552)
2007-10-10r11855: patch from Aruna Prabakar for checking that the spooler si running ↵Gerald Carter1-0/+29
on HP-UX (This used to be commit 017775f2879454f939c35196b3db6d1f2b9d1333)
2007-10-10r11420: Fix issue pointed out by Dina Fine <dina@exanet.com>. We canJeremy Allison1-5/+5
only tell at parse time from the wire if an incoming name has wildcards or not. If it's a mangled name and we demangle the demangled name may contain wildcard characters. Ensure these are ignored. Jeremy. (This used to be commit 4cd8e2a96b98ff711905e8c6f416b22440c16062)
2007-10-10r10656: BIG merge from trunk. Features not copied overGerald Carter6-63/+132
* \PIPE\unixinfo * winbindd's {group,alias}membership new functions * winbindd's lookupsids() functionality * swat (trunk changes to be reverted as per discussion with Deryck) (This used to be commit 939c3cb5d78e3a2236209b296aa8aba8bdce32d3)
2007-10-10r10555: a few compile warnings from jason MaderGerald Carter1-3/+3
(This used to be commit 88998fa0b919fec4966d171a9c7b4f875bc1e26a)
2007-10-10r10554: * BUG 3057: assume x64 drivers are v3 driversGerald Carter1-1/+8
* BUG 3087: allow smbspool to establisha geust connection using a username with no password (This used to be commit 39369c8041e0633e88c30e0c62530c2393ef80f6)
2007-10-10r10371: Adding iPrint printing backend written by Joel J. Smith @ Novell.Jeremy Allison3-0/+1257
Jeremy. (This used to be commit 155dc2d52a971bfb8d7565c06f3efc637e130b11)
2007-10-10r10154: Fix crash bug on security descriptor upgrade (as seen on x86_64).Günther Deschner1-1/+2
Guenther (This used to be commit daa61ef75b4f7cf510b17cd0b85f5830c73b9279)
2007-10-10r9739: conver the reg_objects (REGSUBKEY_CTR & REGVAL_CTR) to useGerald Carter1-351/+145
the new talloc() features: Note that the REGSUB_CTR and REGVAL_CTR objects *must* be talloc()'d since the methods use the object pointer as the talloc context for internal private data. There is no longer a regXXX_ctr_intit() and regXXX_ctr_destroy() pair of functions. Simply TALLOC_ZERO_P() and TALLOC_FREE() the object. Also had to convert the printer_info_2->NT_PRINTER_DATA field to be talloc()'d as well. This is just a stop on the road to cleaning up the printer memory management. (This used to be commit ef721333ab9639cb5346067497e99fbd0d4425dd)
2007-10-10r9244: Fix bugs found by Coverity.Jeremy Allison1-3/+21
Jeremy. (This used to be commit bf80edeea70cb4ed90f9e1e7adeedeb9cf3b38c1)
2007-10-10r9086: * fix invalid read in parse_spoolss when writing a devmode toGerald Carter1-15/+22
the wire * fix dup_a_regval() when size is 0 * ensure we pass a pstring to unlink_internals (fixes delete_driver code) (This used to be commit 353e63ff421c564a1b7c7cfe95982f31c871a227)
2007-10-10r8686: Revert %LOGONSERVER%-substitution. The substition is done on the client,Günther Deschner1-1/+1
not on the server. We now preserve this windows variable (important for vampired setups) and correctly substitute only the "%L"s in strings like: "%LOGONSERVER% %L %lOgOnSeRvEr% %L". Guenther (This used to be commit dccf777f42ce1d3f788548842fb8a606bed5708c)
2007-10-10r8543: merge volker's nt_printing_init() fix from trunk (r8526)Gerald Carter1-1/+6
but make sure to write the new version to the ntdrivers.tdb. (This used to be commit 9e50d696c3e101174670c47ecbd6401bec2ab3d3)
2007-10-10r8506: BUG 2853: don't strip out characters like '$' from printer namesGerald Carter1-16/+8
when substituting for the lpq command. (This used to be commit 2f5de718a98e56fe55d8905b12505dfc3e432544)
2007-10-10r8501: * disable printer handle object cache (was mostly usedGerald Carter1-66/+174
for NT4 clients enumerating printer data on slow CPUs) * fix pinter and secdesc record upgrade to normalize the key (rev'd printer tdb version) * fixed problem that was normalizing the printername name field in general, this should fix the issues upgrading print servers from 3.0.14a to 3.0.20 (This used to be commit d07179de2f2a6eb1d13d0e25ac10de1a21475559)
2007-10-10r8219: Merge the new open code from HEAD to 3.0. Haven't yet run the tortureJeremy Allison2-41/+61
tests on this as it's very late NY time (just wanted to get this work into the tree). I'll test this over the weekend.... Jerry - in looking at the difference between the two trees there seem to be some printing/ntprinting.c and registry changes we might want to examine to try keep in sync. Jeremy. (This used to be commit c7fe18761e2c753afbffd3a78abff46472a9b8eb)
2007-10-10r8089: successfully delete printer subkeys via the registry....now for valuesGerald Carter1-0/+32
(This used to be commit d3427960b0676c506c639b582a2544dc58990c9e)
2007-10-10r8066: * had to modify the printer data storage slightly in ntprinters.tdbGerald Carter1-9/+64
when packing values. It is a compatible change though and will not require a tdb version upgrade * Can successfully create new printer subkeys via winreg that are immediately available via spoolss calls. Still cannot delete keys yet though. That comes next. (This used to be commit 00bce2b3bb78a44842a258b1737076281297d247)
2007-10-10r8025: *how* can this code have been around so long andGerald Carter1-14/+33
nver normalized the string used for printer and sec_desc key lookups ????? normalized sharename to lower case before storing/fetching from tdb. Need to look at drivers and forms tdb as well (perhaps). (This used to be commit 4aec5dce5c2d0b5c686123a624b58097be9d911a)
2007-10-10r7983: clean up some use of un-initialized variables found by valgrindGerald Carter1-10/+5
(This used to be commit 5f4a3f61a354346d7dde11d6d7930abe007b9603)
2007-10-10r7882: Looks like a large patch - but what it actually does is make SambaJeremy Allison1-13/+13
safe for using our headers and linking with C++ modules. Stops us from using C++ reserved keywords in our code. Jeremy (This used to be commit 9506b8e145982b1160a2f0aee5c9b7a54980940a)
2007-10-10r7829: fix unitialized printer status field that was breaking migration of ↵Gerald Carter1-0/+2
print queues (This used to be commit ada1d326aeef4a2f33a360a8ea4a874e59fcfee6)
2007-10-10r7692: start versioning the registry.tdb file since it can be modified nowGerald Carter1-4/+1
(This used to be commit a091b37d59d1e0228a9c8d4bd2a31e9bbaafde99)
2007-10-10r7691: * add .gdbinit to the svn:ignore filesGerald Carter1-2/+0
* start adding write support to the Samba registry Flesh out the server implementations of RegCreateKey(), RegSetValue(), RegDeleteKey() and RegDeleteValue() I can create a new key using regedit.exe now but the 'New Key #1' key cannot be deleted yet. (This used to be commit e188fdbef8f0ad202b0ecf3c30be2941ebe6d5b1)
2007-10-10r7620: when adding a new printer driver, we should copy the filesGerald Carter1-40/+22
(not move) to the W32X86/{2,3}/ directory. Printmig.exe copies the driver files for all drivers to print$/W32X86 and the calls AddPrinterDriver() for each driver. If we move the file, then adding a driver which shares a file with a previous driver will fail. I can now restore drivers in bulk to a Samba 3 server. (This used to be commit 46cd95c9b48a00a51139d3654352d4399b774a9b)
2007-10-10r7614: convert move_driver_to_download_area() to return WERROR in order to ↵Gerald Carter1-5/+5
provide better error messages to clients when a AddPrinterDriver[Ex]() call fails (This used to be commit c98e17446afffc4b12f1a31f6e5cce517fc0a95b)
2007-10-10r7584: cleanup the default printer security descriptorGerald Carter1-32/+29
(This used to be commit 26387fc74c1157157e7e8728003a39d10aeb4cc1)
2007-10-10r7200: Don't use memset, use SET_STAT_INVALID (has the same effect).Jeremy Allison1-3/+3
Jeremy. (This used to be commit 0b6f87d5e14da461bd2b1c3a4e6f47a69d2cd1c4)
2007-10-10r7041: compile fixes....long day I guessGerald Carter1-2/+3
(This used to be commit ec3ef5ddbe12fa6ebe8f58979625c671d181c519)
2007-10-10r7038: * upgrade version of nt*tdb files. Have to fixGerald Carter1-10/+145
some issues in the printer security descriptors. Ensure that each printer sd has an oaner and group SID (BUILTIN\Administrators) and that we utilize more than the generic bits assigned in <= 3.0.14a. (This used to be commit c72182c1e20225a655376fd23915ac6053b94633)
2007-10-10r6890: Refactor printing interface to take offset into job. Fixes bugJeremy Allison1-2/+3
where large print jobs can have out-of-order offsets. Bug found by Arcady Chernyak <Arcady.Chernyak@efi.com> Jeremy. (This used to be commit 482f7e0e3706098b71aa0b31a134994acb1e9fcf)
2007-10-10r6673: Fix the write cache based on some VERY good detective workJeremy Allison1-1/+0
from Ingo Kilian <ikilian@web.de>. You must do a make clean after updating this. Jeremy. (This used to be commit 3b2cd19fcb8ce38578b122fd6ae722b73081dcda)
2007-10-10r6595: This is Volkers new-talloc patch. Just got the go-ahead fromJeremy Allison1-3/+3
Volker to commit. Woo Hoo ! Jeremy. (This used to be commit 316df944a456f150944761dab34add5e8c4ab699)
2007-10-10r6490: BUG 1998: patch from Olaf Imig <Olaf.Imig@bifab.de>; fix byte ↵Gerald Carter1-3/+9
ordering bug when storing 16-bit RAP print job ids (This used to be commit 2c66a4098a3c9ca0a12160d4193d65085ece1dfe)
2007-10-10r6263: Get rid of generate_wellknown_sids, they are const static and ↵Volker Lendecke1-1/+0
initializable statically. Volker (This used to be commit 3493d9f383567d286e69c0e60c0708ed400a04d9)
2007-10-10r6225: get rid of warnings from my compiler about nested externsHerb Lewis2-2/+3
(This used to be commit efea76ac71412f8622cd233912309e91b9ea52da)
2007-10-10r5993: compiler warning fixGerald Carter1-1/+1
(This used to be commit 4e8b868e6e29513a0c4c1b8992a502d5b6cf2c3d)
2007-10-10r5950: more compiler warning's from Jason MaderGerald Carter1-2/+2
(This used to be commit 27c6e85ad59a86ab45ae3297c7445c4ff15546c8)
2007-10-10r5807: fix segfault after compiler warning clean up (and cleanup another ↵Gerald Carter1-4/+4
warning) (This used to be commit 2dae527e217ff9da2ad9f434bf1280744e93fad7)
2007-10-10r5792: Added new parameter "inherit owner". If set on a share, the created ↵Jeremy Allison1-1/+1
file/directory will be owned by the same uid as the containing directory. Doing this for directories in a race-free mannor has only been tested on Linux (it depends on being able to open a directory and then do a fchown on that file descriptor). If this functionality is not available then the code silently downgrades to not changing the ownership of a new directory. This new parameter (docs to follow) finally makes it possible to create "drop boxes" on Samba, which requires all files within a directory to be commonly owned. A HOWTO on how to use this will follow. Jeremy. (This used to be commit 2e1f727184b9d025d2e3413bdd3d01d5ca803a41)