Age | Commit message (Collapse) | Author | Files | Lines |
|
I think we have a lot more of these bugs lurking (i'm fairly
confident of it).
jerry
(This used to be commit 3b14487c7e5218ff3e0ff3118ca1afd706e05247)
|
|
- init_unistr2_from_unistr() does not NULL terminate
the buffer
--jerry
(This used to be commit 65ee5f9b6ed3c4ad33fefd3c879f2649496fd3f3)
|
|
Jeremy
(This used to be commit f94f37dcab2bc2b68e2b6b4ca440ad53a60e8117)
|
|
Marshalling code path now uses spoolss_smb_io_unistr()
also caught a NULL pointer case.
i'll update TNG later.
(This used to be commit bd4c83eb40a14baf447ac88886d4eafe7b9a309f)
|
|
to use spool_smb_io_unistr() as this does not call prs_align()
befrore parsing the UNISTR.
Parsing a void* buffer from an RPC should not be aligned
on 4 byte boundaries. Don't think this change affects
any marshalling code, only unmarshalling...
jerry
(This used to be commit bc154e8522a75540a8504195c1e6f45739167e6b)
|
|
as it was throwing things off when parsing buffers passed in SPOOLSS
RPCs
fixed the unmarshalling of UNISTR arrays to be double NULL terminated
jerry
(This used to be commit 236f19659cea87cc35128990954d30c43114b889)
|
|
of 0 bytes.
jerry
(This used to be commit 3fcc59ba928250759bbf3ef46d7c118950a5ba6f)
|
|
The smb_io_unistr() code called a prs_align, this was not being
counted in the size or taken account of in the offset calculation.
Fixed size_ calculation to always return a size a multiple of 4
and also set the offset correctly. This fixes the problem I saw
and will hopefully fix the problem HP reported. JF please check
this change.
Jeremy.
(This used to be commit ceba9f3dcdb4bddae17ec0024692c9074086302d)
|
|
struct. Not wuite there.
jerry
(This used to be commit 1a145977f09654fc51ebcd40ef7a2aa69aa96cfb)
|
|
jerry
(This used to be commit 26a73a70e282a5e46cc2b6fe7bc09b406724c9dd)
|
|
Also fixed init_unistr() to deal with a NULL source character string.
-jerry
(This used to be commit 8ecd5dd52a6bd867f5d117352048ee43ce7254d9)
|
|
--jerry
(This used to be commit 1e00ac19cd001024fa8007eff5137aac877796fa)
|
|
- cleaned up some code
- Fixed a few memory leaks of my own making
- Add AddPrinterDriver(); I'm missing some of the semantics
here as the call is done correctly, but I'm not getting all
the information right in the DRIVER_INFO_3 struct I think.
Will work on it tomorrow some more...
--jerry
(This used to be commit 3bf9a29f34ee4ade5180c5a0b0b9ff4aca7f0f08)
|
|
Fixed missing )
j-
(This used to be commit 7b69cbbde36e51f8f7b74691428a04e8871d8b4a)
|
|
Replaced with a memcpy()
Forgot to commit this a few moments ago
j-
(This used to be commit 34d4fb54c3121d31cb8b29193f71d5e7b5471cdc)
|
|
Thanks :-)
j-
(This used to be commit 4ecd15cd5851e94808756e3da0ce6a066f0a0cd7)
|
|
that the call failed, but the printer shows up on the remote NT client.
(note this is the client side call). I've botched the return value
somewhere and will fix that today.
jerry
(This used to be commit e15d9befd24cf5f3410c4be819b2a1fcf68048fb)
|
|
NT <-> NT), I've come to realize that UNISTR2 strings should be NULL
terminated.
jerry
(This used to be commit c8f9e54beafcb0c0668f1510e7693dbf22485aa8)
|
|
now reproduce the bug I had with adding a printer driver, and PrintMig.exe
crashes if I use my SD code but works with his.
I stand completely corrected :-). - So I'm reverting to his code as it works :-).
Jeremy.
(This used to be commit d6db29be98f717a9038b5ac1ff492c70ce2e92a7)
|
|
NT_STATUS_XXX).
Removed IS_BITS_xxx macros as they were just reproducing "C" syntax in a more
obscure way.
Jeremy.
(This used to be commit c55bcec817f47d6162466b193d533c877194124a)
|
|
fix for the Win9x printer drivers.
Changed command names to add "command" string on the end for some consistancy
with the other scripting commands.
Added '%P' option to tdbpack/unpack to store long comment string.
Made port name be "Samba Printer Port" if no enum port script given.
Fixed prs_uint32_pre code to cope with null args.
Jeremy.
(This used to be commit 902ada63799cf27924c72e24e7593a8c9fb5eba9)
|
|
* Fixed to work with Jeremy's recent changes re: dunamic
memory allocation when unmarshalling unistr[2]
* included EnumPorts level 1
* more work on AddPrinterEx
--jerry
(This used to be commit d321d0dddd052b49c94bef8f214be7343337d907)
|
|
(This used to be commit 4ab75143c4466ad0ea8443512dd5ade449d72462)
|
|
J.F.
(This used to be commit 9178d2a1aac26f8d6533f7dc86ff9b19eb72db8b)
|
|
in the RPC code. This change was prompted by trying to save a long (>256)
character comment in the printer properties page.
The new system associates a TALLOC_CTX with the pipe struct, and frees
the pool on return of a complete PDU.
A global TALLOC_CTX is used for the odd buffer allocated in the BUFFERxx
code, and is freed in the main loop.
This code works with insure, and seems to be free of memory leaks and
crashes (so far) but there are probably the occasional problem with
code that uses UNISTRxx structs on the stack and expects them to contain
storage without doing a init_unistrXX().
This means that rpcclient will probably be horribly broken.
A TALLOC_CTX also needed associating with the struct cli_state also,
to make the prs_xx code there work.
The main interface change is the addition of a TALLOC_CTX to the
prs_init calls - used for dynamic allocation in the prs_XXX calls.
Now this is in place it should make dynamic allocation of all RPC
memory on unmarshall *much* easier to fix.
Jeremy.
(This used to be commit 0ff2ce543ee54f7364e6d839db6d06e7ef1edcf4)
|
|
So fixed enumprinterdatas in rpcclient to debug the server code,
and found that the parsing code was missing 2 prs_align().
We are not crashing NT anymore. :-)
J.F.
(This used to be commit 883f7402d495182aeff85152216cc8b3cfc18bef)
|
|
- changed the default forms flag to 2
- all short architecture name are uppercased
- get_short_archi() is now case unsensitive
- the drivers TDB is indexed by archi/version/name
- implemented code to move drivers from the upload area to the download
area. Someone else need to look at that code.
- don't return anymore a default driver if it doesn't exist in the TDB.
Instead return an error.
- cleaned prs_unistr.
- #ifdef out jeremy's new SD parsing in printer_info_2
- removed the unused MANGLE_CODE
- #ifdef out the security checking in update_printer() as it doesn't work
for me.
Zap your ntdrivers.tdb, it won't work anymore.
J.F.
(This used to be commit ac0a145acc0953a6f362497abbf4dfe70aa522a6)
|
|
in order - moved them into open_printer_hnd().
Added saving of comment field.
Jeremy.
(This used to be commit a0ee774fe92e5d0bc84d1d6729e8c538c67e8aba)
|
|
Tim, You should also look at new_smb_io_printer_info_2()
and see if the change from NULL to &i regarding the secdesc is ok.
jerry
(This used to be commit a2205c6646aa677090908a4e1532ed8590adc0e0)
|
|
rpc_parse/parse_spoolss.c: Fixed the security descriptor marshalling in a INFO_2 struct.
for some reason SD's should be done inline after the info2, not
as the last buffer marshall.
rpc_server/srv_spoolss_nt.c: Removed extraneous ()'s.
Jeremy.
(This used to be commit f038a24e9f624fdb04cd52769d45783248ce8a38)
|
|
--jerry
(This used to be commit f7bc6df3befb8d0981dbd96f353039a5913321d7)
|
|
as these were unneeded and replaced by the real functions
already in HEAD.
Added a few more functions to parse_spoolss.c to help with the
rpcclient merge from TNG.
(This used to be commit 3bc9af4c1dbdb664970541f6091982ffccc87b31)
|
|
required.
J.F.
(This used to be commit 08b41bab177affac088c981d7c620728e8e6e9b0)
|
|
add_a_printer() now.
- correctly unpack the private part of a devmode and remove a memleak
- correctly retrieve the pair(value,data) for getprinterdata
- handle null devicemode in printer_info_2
I still have some bugs but I'm not crashing anymore NT4SP6 d/c build :-)
J.F.
(This used to be commit 493f7d11acf753ba24c88e6cbb73d86a8595a66a)
|
|
use old prs_unistr()
#else
use new prs_unistr() which handles UNMARSHALL
#endif /* RPCCLIENT_TEST */
jerry
(This used to be commit fb0e1fb9e31db135eeb8e949a7ad0826906ba1ff)
|
|
by RPCCLIENT_TEST) in order to not break anything in the smbd
code (and to give time to review it). Originally written by JF.
In effect, this checkin makes no changes to parse_prs.c at all.
jerry
(This used to be commit 4f431ea1f5d1d3b868d0bb56a299070e608c2512)
|
|
(This used to be commit 898a483cdab1ed7d8ff902c0dc0e0620440ae4cd)
|
|
domain_client_validate()
(This used to be commit 3ee111bff78826a5ee419554d4ef2b2b2d3ae7aa)
|
|
* fixes some readline bugs from the merge
* first attempt at commands (spoolenum almost works)
* no changes to existing functions in HEAD; only additions
of new functions. I'll weed out what I can as I go.
--jerry
(This used to be commit 61d2aad5dc2b212b11c981f1eca47efa627e9fc8)
|
|
after.
I don't know who broke all that code, but I'm ******** (censured)
J.F.
(This used to be commit 1fae158529ca0d1cb01ff422638418ce0dbd8dbf)
|
|
J.F.
(This used to be commit a882dd225e464b300cedb52eb43f57f3a56c5b31)
|
|
don't know how the C language works :-).
Jeremy
(This used to be commit d47329649d4f92a52acac7de256d9d9b0afc33c8)
|
|
experimentation with what is making spoolss.exe crash - may be removed
later.
Jeremy.
(This used to be commit f3fe384dc39ce49c639a7adf35179a50cb86abf0)
|
|
crashes but there are still more to work on.
Jeremy.
(This used to be commit aa49dc037fa4e7b00d1a33619da5450a4eda1b9e)
|
|
security descriptors is disabled (as it is in this code).
If get/set sd's is enabled spooler.exe crashes on NT.
I'll investigate and fix that issue next.
Jeremy.
(This used to be commit 8c9ed874363e6a710bc0fe521bb8c4f7ee219587)
|
|
rpc_parse/parse_spoolss.c: Added note about prs_align when marshalling a SEC_DESC...
rpc_server/srv_lsa.c: Tim - your changes broke the display of the 'everyone' group
when doing file access with no winbindd running. This is a partial
fix - more when I have analysed this more.
rpc_server/srv_spoolss_nt.c: Fix for the 'change driver' problem ! Hurrah !
Jeremy.
(This used to be commit 151b131ee01ef916c072bcdaa9943a2e984a0f45)
|
|
memory fixes.
Jeremy.
(This used to be commit 2a9e645cbddef1cddc5c978310b7efed492758d2)
|
|
stuff.
J.F.
(This used to be commit 1871d4a3f64401f9a6f749ce26d1715e3bcdeac3)
|
|
place to do this, not in smbd/passwd.c
Please don't change this without asking first, I have run this past
Andrew so talk to him (I'm on vacation next week).
I also removed the g_newXXX macros. There are essentially a private C extension,
not used anywhere else in the code, and add no functionality over malloc(XX)
and make the code harder to understand (everyone knows what malloc does).
Jeremy.
(This used to be commit e1b1b6fb6794ba02e1fea510a981fa0ce0d12b58)
|
|
jeremy, the intent is to call se_access_check() with usr-sid, grp-sid,
array-of-group-rids (but array-of-group-sids would do).
please do look at smbd/lanman.c's api_NetWkstaGetInfo, it will show you
that we really do need to store the entire NET_USER_INFO_3 structure.
then again, api_NetWkstaGetInfo is only used by win9x so who cares :)
(This used to be commit bd34f652390adc32c4959d164c628687f526d977)
|