1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00
Commit Graph

39 Commits

Author SHA1 Message Date
Gerald Carter
44707ad2e0 r9739: conver the reg_objects (REGSUBKEY_CTR & REGVAL_CTR) to use
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 ef721333ab)
2007-10-10 11:03:25 -05:00
Gerald Carter
b5c7572419 r8327: * don't use unitialized variables
(This used to be commit bd87819795)
2007-10-10 10:58:20 -05:00
Gerald Carter
1cb4334fb9 r8325: * punt....don't normalize the printer name in the RegCreateKey().
Print Migrator now works as long as the addprinter command can
  handle the name
(This used to be commit 61f14cdcbd)
2007-10-10 10:58:19 -05:00
Gerald Carter
e574081ad9 r8324: * initial cut at creating printers via the registry API
Need to add delete_key support
(This used to be commit 9a27f7181a)
2007-10-10 10:58:19 -05:00
Gerald Carter
279a2b48b4 r8323: * convert RegSetValue() calls immediately beneath the printer
key to PRINTER_INFO_2 fields.
(This used to be commit fadda2f240)
2007-10-10 10:58:19 -05:00
Gerald Carter
18609ce1af r8322: * get RegSetValue() working for printer subkey values
(not immediate values below the <printer name> key yet.
(This used to be commit a872ea5f0e)
2007-10-10 10:58:19 -05:00
Gerald Carter
22ea1952c8 r8089: successfully delete printer subkeys via the registry....now for values
(This used to be commit d3427960b0)
2007-10-10 10:58:10 -05:00
Gerald Carter
c296f858ef r8066: * had to modify the printer data storage slightly in ntprinters.tdb
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 00bce2b3bb)
2007-10-10 10:58:10 -05:00
Gerald Carter
0a01b2246a r8064: * add the REG_XXX error codes to the pretty error messages
* more work on the store_values() functions for the Printers key
* add Control\Print\Monitors key to list for reg_db
(This used to be commit 89f17b41ce)
2007-10-10 10:58:10 -05:00
Gerald Carter
8e3445c804 r8061: * mostly cleanup and refactoring for better readability
* move to registry.tdb for port listing (at least via the winreg ops)
  If no one opposes on the samba list, we'll move to a registry
  lookup for enumerating ports rather than the 'enumports command'.
  This means that there is a bit of a disconnect between EnumPorts() and
  RegEnumKey('hklm\software\microsoft\windows nt\currentversion\ports').
(This used to be commit 6f654c5741)
2007-10-10 10:58:10 -05:00
Gerald Carter
c5a51f0273 r8027: driver information is now back via winreg
(This used to be commit f0a1c6b9ce)
2007-10-10 10:58:09 -05:00
Gerald Carter
8cea99d3ac r8026: * more fixes to the printing registry interface
(still not completely back to the read functionality
  we previously had but the cleanup is progressing)
(This used to be commit 04431372a6)
2007-10-10 10:58:09 -05:00
Gerald Carter
d80f6fd4a4 r8022: * implement default actions rather than having to define functions
for every fetch/store callback (some keys should never have a value)
(This used to be commit 7466351dd0)
2007-10-10 10:58:08 -05:00
Gerald Carter
9e31275531 r8008: * start adding logic for restricting subkey paths
e.g. 'hklm\software\microsoft\windows nt\currentversion\ports'
  should have no subkeys.  Return an error if a client tries
  to open a path below here
(This used to be commit 7a2ecb1aec)
2007-10-10 10:58:08 -05:00
Gerald Carter
b319bdd32f r8007: * cleanup unused structure from reg_objects.h
* make regdb_store_XXX() and regdb_fetch_XXX() functions non-static
* use case sensitive string lookups in reg_dynamic.c since the
  keys have already been normalized
* move to new design for making printing related data available
  via the winreg pipe (with the intent of allowing writes)
(This used to be commit 28c7293ee9)
2007-10-10 10:58:08 -05:00
Gerald Carter
270b90e25f r7995: * privileges are local except when they're *not*
printmig.exe assumes that the LUID of the SeBackupPrivlege
  on the target server matches the LUID of the privilege
  on the local client.  Even though an LUID is never guaranteed
  to be the same across reboots.  How *awful*!  My cat could
  write better code! (more on my cat later....)

* Set the privelege LUID in the global PRIVS[] array

* Rename RegCreateKey() to RegCreateKeyEx() to better match MSDN

* Rename the unknown field in RegCreateKeyEx() to disposition
  (guess according to MSDN)

* Add the capability to define REG_TDB_ONLY for using the reg_db.c
  functions and stress the RegXXX() rpc functions.
(This used to be commit 0d6352da48)
2007-10-10 10:58:07 -05:00
Gerald Carter
bd509a81cb r7908: * change REGISTRY_HOOK api to use const (fix compiler warning
in init_registry_data()
* Add means of storing registry values in registry.tdb
* add builtin_registry_values[] array for REG_DWORD and REG_SZ
  values needed during startup
* Finish up RegDeleteValue() and RegSetValue()
* Finish up regdb_store_reg_values() and regdb_fetch_reg_values()

I can now create and retrieve values using regedit.exe on Win2k.

bin/net -S rain -U% rpc registry enumerate 'hklm\software\samba'
Valuename  = Version
Type       = REG_SZ
Data       = 3.0.20

Next is to do the virtual writes in reg_printing.c and I'll be
done with Print Migrator (yeah!  finally)
(This used to be commit 3d837e58db)
2007-10-10 10:58:03 -05:00
Gerald Carter
b1f1cb0e74 r7838: lie about the printer status when doing the queryvalue() registry call. Note that if you migrate a printer to a Windows server, the win spooler will remove any printers that have an invalid status value in the registry
(This used to be commit 0a22ea9eb7)
2007-10-10 10:57:58 -05:00
Gerald Carter
17eb05228e r7648: adding REGISTRY_HOOK->reg_access_check() for authprization checks on RegOpenKey(); passing it off to the backend code for a given path
(This used to be commit 867fd3052b)
2007-10-10 10:57:18 -05:00
Gerald Carter
fed660877c r7415: * big change -- volker's new async winbindd from trunk
(This used to be commit a0ac9a8ffd)
2007-10-10 10:57:08 -05:00
Volker Lendecke
48118680cb r6953: Many compilers in the build farm don't like static variables initialized with
strlen(..). Jerry, I think this needs another fix. I just want to make the
build farm happy.

Not merging to trunk, this needs further looking at.

Volker
(This used to be commit 4f36e4f434)
2007-10-10 10:56:58 -05:00
Gerald Carter
f0c650a382 r6942: * merging the registry changes back to the 3.0 tree
* removing the testprns tool
(This used to be commit 81ffb0dbbb)
2007-10-10 10:56:57 -05:00
Jeremy Allison
acf9d61421 r4088: Get medieval on our ass about malloc.... :-). Take control of all our allocation
functions so we can funnel through some well known functions. Should help greatly with
malloc checking.
HEAD patch to follow.
Jeremy.
(This used to be commit 620f2e608f)
2007-10-10 10:53:32 -05:00
Günther Deschner
2d016a67b8 r2821: Adding "Windows x64" as architecture string and driverdir "x64" for the
64bit AMD platform.

(This used to be "Windows AMD64" and "AMD64" in one of the release
candidates of SP2 for Windows XP. AMD64 is obviously still supported but
not documented.)

Guenther
(This used to be commit cc5892f041)
2007-10-10 10:52:53 -05:00
Jeremy Allison
d3b9384308 Fix for #480. Change the interface for init_unistr2 to not take a length
but a flags field. We were assuming that 2*strlen(mb_string) == length of ucs2-le string.
This is not the case. Count it after conversion.
Jeremy.
(This used to be commit f82c273a42)
2003-09-25 21:26:16 +00:00
Jeremy Allison
211dd28a7a More const fixes.
Jeremy.
(This used to be commit fa93763248)
2003-03-05 01:34:34 +00:00
Gerald Carter
23b3b29eec Progress on CR 601
cache the printer_info_2 with the open printer handle.
cache is invalidated on a mod_a_printer() call **on that smbd**.

Yes, this means that the window for admins to step on each other
from different clients just got larger, but since handles a generally
short lived this is probably ok.
(This used to be commit 31272d3b6b)
2003-02-25 20:53:53 +00:00
Andrew Bartlett
634c54310c Merge from HEAD - make Samba compile with -Wwrite-strings without additional
warnings.  (Adds a lot of const).

Andrew Bartlett
(This used to be commit 3a7458f947)
2003-01-03 08:28:12 +00:00
Gerald Carter
a834a73e34 sync'ing up for 3.0alpha20 release
(This used to be commit 65e7b5273b)
2002-09-25 15:19:00 +00:00
Gerald Carter
4ed429481c Fairly large change to printing code.
* removed support for PHANTOM_DEVMODE printer data

* s/NT_PRINTER_PARAM/REGISTRY_VALUE/g - This was a good bit
  of work.  Everything seems stable, but is not complete.

* support for printer data keys other than PrinterDriverData
  in the store and fetch routines.  Still needs to be plugged
  into the XxxPrinterDataEx() calls.

Tested against NT4.0 & 2k.  Like I said, it's not done, but doesn't
crash so it shouldn't upset anyone (unless you're trying to build
a Samba printer server off of HEAD).  More work to come.  Should
settle by Monday.


jerry
(This used to be commit 7ba7c04c0e)
2002-08-16 15:36:37 +00:00
Gerald Carter
787cd2c1e9 hardcode printprocessor name since it is everywhere else
(This used to be commit efbfb8ca54)
2002-07-29 18:06:22 +00:00
Gerald Carter
a12ed7f506 done! printer_info_2, devicemode, sec_desc, & printer data all enumerate
and display correctly in regedit.exe.

Not sure about REG_SZ values in PrinterDriverData.  If we store these
in UNICODE, I'll have to fix up a few things.

REG_BINARY & REG_DWORD are fine.
(This used to be commit 2a30c243ec)
2002-07-24 08:58:03 +00:00
Gerald Carter
c808cc3643 several changes in this checkin
* added REG_OPEN_HKCR for supporting regedit.exe

* All data n a REGISTRY_VALUE is stored to a pointer now

* fixed REG_INFO to correctly display data when double clicking on
  and entry in the registry editor

* Will now enumerate installed driver_info_3 data

* fixed numerous bugs related to pointer offsets, memory issues, etc..
  in the registry routines

* added a simple caching mechanism to fetch_reg_[keys|values]_specific()

All that is left now is to enumerate PrinterData and I will have finished
what I started out to do....
(This used to be commit 419d7208e8)
2002-07-24 06:42:09 +00:00
Gerald Carter
5b513407c2 * fix to display correct form information in REG_BINARY information
This should be 8 x uint32 (not 7.  I'm guessing the 2nd to the last
  uint32 is the index number for the form?  Not that big a deal
  I don't think.
(This used to be commit 88f0e68bc6)
2002-07-23 05:07:40 +00:00
Gerald Carter
6dd9f24d05 another intermediate checkin on the way to enumerating forms
via the registry.  There is a seg fault here which shouldn't
bother anyone until I can get it fixed.  I just need
a check point in case I need to roll back to this version later on.
(This used to be commit e62ae94823)
2002-07-20 13:23:57 +00:00
Gerald Carter
b516eb62db enumeration of printers keys ( no data yet ) via the registry
functions now works :-)
(This used to be commit c5768538f6)
2002-07-20 04:27:30 +00:00
Gerald Carter
9fe3bd1259 * refactored registry operations some. subkey lists and
registry values are now passed around in containers
  (REGSUBKEY_CTR & REGVAL_CTR) which each possess a TALLOC_CTX.

* removed subkey_specific_fn() from REGISTRY_OPS.  Is implemented
  in the form of a wrapper

* temporarily broke the printing registry ops.

* implemented inheritence for the data_p of nodes in a SORTED_TREE

* All REGISTRY_KEY instances now store a valid REGISTRY_HOOK since
  the default REGOSTRY_OPS structure is stored in the root of the
  cache_tree.

* Probably some other change I forgot....  T
(This used to be commit e7b55e8f01)
2002-07-19 18:49:44 +00:00
Jeremy Allison
5f894476d8 Formatting fixup. Fix shadow warning.
Jeremy.
(This used to be commit beb298898d)
2002-07-19 16:45:37 +00:00
Gerald Carter
06ae9ac5d9 virtual registry framework with initial printing hooks.
(This used to be commit a43d9788fa)
2002-07-18 23:00:24 +00:00