1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-21 18:04:06 +03:00

200 Commits

Author SHA1 Message Date
Stefan Metzmacher
5b4acf8b10 r12412: - the 0x1E name must be registered as group name
- reject wins registration with a static record in the database

metze
(This used to be commit 66b57f5fbf1c2a35972950d655695f014e57d9c5)
2007-10-10 13:47:35 -05:00
Stefan Metzmacher
8a2385c933 r12287: move the wins.ldb into lockdir
metze
(This used to be commit bcf04a49e329af6c2a72c0a9cf037cc4efeeb26f)
2007-10-10 13:47:27 -05:00
Stefan Metzmacher
2e51b42c2c r12229: fix the expire time for released records
metze
(This used to be commit 6d355a953838bb551b6aef05b2daaeae13682a7b)
2007-10-10 13:47:22 -05:00
Stefan Metzmacher
2759fc850b r12228: fix the expire time for RELEASED records
metze
(This used to be commit afb0f660a2e4e5ae78c2906e2acf9eba50ea598f)
2007-10-10 13:47:22 -05:00
Andrew Bartlett
a1827a1deb r12227: I realised that I wasn't yet seeing authenticated LDAP for the ldb
backend.

The idea is that every time we open an LDB, we can provide a
session_info and/or credentials.  This would allow any ldb to be remote
to LDAP.  We should also support provisioning to a authenticated ldap
server.

(They are separate so we can say authenticate as foo for remote, but
here we just want a token of SYSTEM).

Andrew Bartlett
(This used to be commit ae2f3a64ee0b07575624120db45299c65204210b)
2007-10-10 13:47:22 -05:00
Stefan Metzmacher
1fb792114a r12217: add my copyright
metze
(This used to be commit f251c5709678415521b3ebae413a6616daa6e50a)
2007-10-10 13:47:20 -05:00
Stefan Metzmacher
5c7707ddcb r12070: make sure a unique record with multiple addresses becauses mhomed
metze
(This used to be commit 4be3b576f2926279686ecada52144b9df8165a03)
2007-10-10 13:47:05 -05:00
Stefan Metzmacher
7416dd1889 r12022: add NBTD IRPC proxy calls for wins challenge and wins release demand,
used for replication conflicts

metze
(This used to be commit d7d14cb2bd9823d7e7d81266ca4014ea5263c714)
2007-10-10 13:47:00 -05:00
Stefan Metzmacher
363d2f69a8 r12021: remove shortpath for winsdb_lookup, this isn't needed
metze
(This used to be commit 8fb07b1ea8fdf353da832212289aceef20495bda)
2007-10-10 13:47:00 -05:00
Tim Potter
03d301ead5 r11967: Fix more 64-bit warnings.
(This used to be commit 9c4436a124f874ae240feaf590141d48c33a635f)
2007-10-10 13:46:52 -05:00
Stefan Metzmacher
c91bdb3af2 r11913: if we have a UNIQUE name with more than 1 address,
it becomes implicit an MHOMED record

metze
(This used to be commit a5bced92a91f462ac6c41c04012aaeb3f77455de)
2007-10-10 13:46:48 -05:00
Stefan Metzmacher
3f80ecc0de r11912: fix nbt_name_registration, there's still some minor stuff todo,
e.g. to return the first address of the 0x1B address as first
     address in the 0x1C reply, and handle sgroup merge overflow
     of 25 addresses

metze
(This used to be commit a80280e061c03f9d07f7d6df20228de7923bb000)
2007-10-10 13:46:48 -05:00
Stefan Metzmacher
d83048aac2 r11910: fix nbt_name_release and nbt_name_query, so that we pass the owned_released vs. replica
winsrepl torture test

metze
(This used to be commit c8c53593fc7831968499b5028417f0de0a7f421b)
2007-10-10 13:46:47 -05:00
Stefan Metzmacher
dd47d5f93f r11900: - make sure address and registered_by are replaced when they're not present
- make sure we don't add active records with 0 addresses

metze
(This used to be commit 5e7324efb338f4c4e390e4930d7ea21056db3a57)
2007-10-10 13:46:44 -05:00
Stefan Metzmacher
5257693496 r11877: - give winsdb_add/modify/delete() ldb_context as first argument
and add a flags argument to add and modify,the current flags are:

  WINSDB_FLAG_ALLOC_VERSION to allocate a new version id for the record
  WINSDB_FLAG_TAKE_OWNERSHIP to take the become the wins owner of the record
- fix handling of records with no addresses, this is valid for MHOMED and SGROUP
  records when they're not in ACTIVE state

metze
(This used to be commit 0ffea2a7b898b1807e4cdcfbbeba9bd0c6792231)
2007-10-10 13:46:39 -05:00
Simo Sorce
5c95905871 r11567: Ldb API change patch.
This patch changes the way lsb_search is called and the meaning of the returned integer.
The last argument of ldb_search is changed from struct ldb_message to struct ldb_result
which contains a pointer to a struct ldb_message list and a count of the number of messages.
The return is not the count of messages anymore but instead it is an ldb error value.

I tryed to keep the patch as tiny as possible bu as you can guess I had to change a good
amount of places. I also tried to double check all my changes being sure that the calling
functions would still behave as before. But this patch is big enough that I fear some bug
may have been introduced anyway even if it passes the test suite. So if you are currently
working on any file being touched please give it a deep look and blame me for any error.

Simo.
(This used to be commit 22c8c97e6fb466b41859e090e959d7f1134be780)
2007-10-10 13:45:53 -05:00
Stefan Metzmacher
3aae4d0224 r11279: it should be only possible to register a 0x1C name, when the NBT_NM_GROUP flag is set
metze
(This used to be commit 81447f440cb339bf8c72706a752b853d3acb0e2d)
2007-10-10 13:45:13 -05:00
Stefan Metzmacher
db5a0adb14 r11088: don't try to set empty strings values as attributes
our ldb doesn't support them, does w2k3 LDAP supports them?

metze
(This used to be commit 97cb22bd9d7f786e9c1609ce97fcd8c54e5725bf)
2007-10-10 13:44:46 -05:00
Stefan Metzmacher
c3c26c9008 r11087: - add type,name,scope as attributes to winsRecords,
so you can use them in search filters,
  only for administration not used inside the winserver code
- fix the samba3 ugrade scripts to create a correct samba4 wins.ldb

metze
(This used to be commit 9f3b6746d86583c48097da48c28f50f075bbd3e3)
2007-10-10 13:44:46 -05:00
Stefan Metzmacher
152aa5bd33 r11053: fix the logic,
this should fix make test

metze
(This used to be commit c7742a2829d64c3a37cf3361fc66811724282170)
2007-10-10 13:44:43 -05:00
Stefan Metzmacher
cffd522b5c r11052: bring samba4 uptodate with the samba4-winsrepl branch,
before the bad merge

metze
(This used to be commit 471c0ca4abb17fb5f73c0efed195c67628c1c06e)
2007-10-10 13:44:43 -05:00
Stefan Metzmacher
94a8893bf4 r11048: r10539@SERNOX: metze | 2005-09-27 14:59:47 +0200
fix the build for changes from SAMBA_4_0 branch

 metze
 r10541@SERNOX:  metze | 2005-09-27 15:05:33 +0200
 use a transaction when we allocate a new version

 metze
 r10549@SERNOX:  metze | 2005-09-27 18:58:37 +0200
 - add first start of wins pull replication
 - we not yet apply records to our database but we fetch them correct form our partners
   (we need conflict handling for this)
 - we also need to filter out our own records!

 metze
 r10568@SERNOX:  metze | 2005-09-28 11:33:04 +0200
 move composite helpers to a seperate file, create a a seperate file for the conflict resolving logic

 metze
 r10571@SERNOX:  metze | 2005-09-28 12:00:17 +0200
 add forward declarations...to fix the build

 metze
 r10612@SERNOX:  metze | 2005-09-29 16:11:06 +0200
 we have a nbt_name now, and don't need to parse it

 metze
 r10614@SERNOX:  metze | 2005-09-29 16:38:35 +0200
 filter out our own records

 metze
 r10620@SERNOX:  metze | 2005-09-29 18:07:08 +0200
 - handle mutliple addresses in WREPL_REPL_SEND_REPLY
 - make strings always valid talloc pointers

 metze
 r10621@SERNOX:  metze | 2005-09-29 18:09:41 +0200
 use debug level 2

 metze
 r10622@SERNOX:  metze | 2005-09-29 18:48:05 +0200
 - add one more debug message when we reply no record
 - fix min max logic

 metze
 r10623@SERNOX:  metze | 2005-09-29 20:49:06 +0200
 build fixes...

 metze
 r10629@SERNOX:  metze | 2005-09-30 00:11:41 +0200
 - use seperate attributes for type, state, nodetype, is_static

 ... the winserver.c code needs some more updates to correctly,
 create special group and multihomed registrations...

 metze
 r10640@SERNOX:  metze | 2005-09-30 04:07:34 +0200
 - add some short path for the composite helper functions
   they will be used in the next commit

 metze
 r10642@SERNOX:  metze | 2005-09-30 06:29:06 +0200
 fix the build

 metze
 r10655@SERNOX:  metze | 2005-09-30 17:36:49 +0200
 - implement the WREPL_REPL_UPDATE* and WREPL_REPL_INFORM*
   this includes the connection fliping into a client connection
   for WREPL_REPL_UPDATE*

 NOTE: I not yet found out how to get the w2k server to use INFORM against samba4
       it uses inform against w2k and w2k3 but UPDATE against nt4 and samba4

 what's left now is to be able to initiate INFORM and UPDATE requests to notify
 our pull partners

 metze
 r10727@SERNOX:  metze | 2005-10-05 14:11:05 +0200
 fix the build

 metze
 r10770@SERNOX:  metze | 2005-10-06 16:56:01 +0200
 - move the table filling to a seperate function, will be reused later
 - fix the build, wrepl_nbt_name fixes
 - remove state -> update_state

 metze
 r10771@SERNOX:  metze | 2005-10-06 17:04:48 +0200
 add a function to create a wreplsrv_in_connection from a client connection

 metze
 r10772@SERNOX:  metze | 2005-10-06 17:13:51 +0200
 - make the connection code more generic to handle the pull cached connection,
   push cached connection or given connections
 - when we don't use a cached connection, disconnection when a pull_cycle is done
 - fix the build and use the configured source ip

 metze
 r10773@SERNOX:  metze | 2005-10-06 17:18:49 +0200
 - add composite functions for push notification

 metze
 r10774@SERNOX:  metze | 2005-10-06 17:23:46 +0200
 - use periodic push notifycation, this is just for now
   as it needs to be configurable and and be triggered when the local database
   has changes since the last notify
 - I also need to work out how to decide if the partner supports
   persistent connections and WREPL_REPL_INFORM* messages

 metze
 r10923@SERNOX:  metze | 2005-10-12 16:52:34 +0200
 fix the build becuse of conflicts with main SAMBA_4_0 tree

 metze
(This used to be commit 6d97dd6e50423758d081459ec551f4e04dfd818d)
2007-10-10 13:44:42 -05:00
Stefan Metzmacher
d387193913 r11047:
(This used to be commit 177d60f42ac05da2efe47fe4911bc5818662a7cd)
2007-10-10 13:44:42 -05:00
Stefan Metzmacher
4c6fb8de2f r11045:
(This used to be commit a2c6969306a18b0bb9629b3eae8a5e4a1aeae285)
2007-10-10 13:42:35 -05:00
Stefan Metzmacher
5ec6aa1476 r11044:
(This used to be commit 914e16f5676234862ebaf5d3c6e02bc1eb47ce51)
2007-10-10 13:42:35 -05:00
Stefan Metzmacher
f197180d8d r11042: r10361@SERNOX: metze | 2005-09-20 22:36:28 +0200
we should only use 255.255.255.255 for group records,
 only when we reply, not when the name is registered.
 the real address is used for replication

 metze
(This used to be commit 45a774c63cbbe4dbd6e17510cf2c7d59d30ea9be)
2007-10-10 13:42:34 -05:00
Stefan Metzmacher
676b220f3e r11040: r10357@SERNOX: metze | 2005-09-20 21:28:11 +0200
- as the old records are broken sinse the last winsdb_dn() changes, (the dn components order was reversed)
   we can use nicer attribute and objectClass names...

 - use much more verbose error handling for winsdb_*
 - print a debug message when we found a corrupted record

 metze
(This used to be commit 82bad3f3efec5b706a65e65054787f1486d7c875)
2007-10-10 13:42:34 -05:00
Stefan Metzmacher
2f54bab951 r11036: r10349@SERNOX: metze | 2005-09-20 15:38:31 +0200
we know answer send_requests correctly

 metze
(This used to be commit aecc9ca1cc78ce5ea766954629c03ea866c36bc1)
2007-10-10 13:42:33 -05:00
Stefan Metzmacher
e148b33f4b r11034: r10344@SERNOX: metze | 2005-09-20 11:35:54 +0200
create winsdb_record() and winsdb_message() as public functions
 so that they can be used in the wrepl_server/

 metze
(This used to be commit b8b48c8aa5f741ad020d0a4debac665f8b2953ab)
2007-10-10 13:42:33 -05:00
Stefan Metzmacher
56e4a9dd2b r11030: r10338@SERNOX: metze | 2005-09-20 09:20:49 +0200
fix uninitialized variable

 metze
(This used to be commit e6fb40e51d2742c05c2fbbb96f367710e46ba7ae)
2007-10-10 13:42:31 -05:00
Stefan Metzmacher
a76ffb574c r11029:
(This used to be commit 49e61d011c702ae51982d45025ad35e44a6c39d6)
2007-10-10 13:42:31 -05:00
Stefan Metzmacher
6f0f39cab1 r11027: r10319@SERNOX: metze | 2005-09-19 18:31:23 +0200
- store the wins owner on the record and the wins owner and expire time on each address
 - we use "0.0.0.0" to mark entries which are registered at the local wins server
 - we use this ldif-format:
 address: 172.31.9.1;winsOwner:0.0.0.0;expireTime:20050923032337.0Z
 address: 172.31.1.1;winsOwner:172.31.9.202;expireTime:20050923032330.0Z

 metze
(This used to be commit 752025a0e10bfea646784087b5128841ec127a65)
2007-10-10 13:42:16 -05:00
Stefan Metzmacher
4c297bac9d r11026: r10318@SERNOX: metze | 2005-09-19 16:38:15 +0200
move to struct winsdb_addr, (I'll add expiry_time and the wins_owner later

 tridge: can you please review the new winsdb_addr_* functions carefull, look for off-by-one bugs, etc.

 metze
(This used to be commit 72eba90465c478ac9d363ed0c88efea27afd158e)
2007-10-10 13:42:16 -05:00
Stefan Metzmacher
1d55354663 r11025: r10313@SERNOX: metze | 2005-09-19 12:19:27 +0200
add wrapper functions for the "address" attribute in the winsdb,
 the goal is to store the expiry time and the wins owner per address,
 which is needed for wins replication

 metze
(This used to be commit 2fd3bbd0449af3702bf473f97474bc1343f7a502)
2007-10-10 13:42:16 -05:00
Stefan Metzmacher
0f6791edc6 r11024: r10311@SERNOX: metze | 2005-09-19 11:27:34 +0200
remove doublicate NULL-pointer check

 metze
(This used to be commit eb1dee09652beb6d401cdc2058427db5f18bea67)
2007-10-10 13:42:16 -05:00
Stefan Metzmacher
bab5662021 r11022: r10309@SERNOX: metze | 2005-09-19 11:08:37 +0200
- add winsdb_connect() function, so that the winsdb can be opened by the wrepl_server/ code
 - remove maintaining of a min_version field, as it was implemented incorrect, and is maybe not needed at all
 - fix handling of max_version, (we started with 0, on each server start)

 metze
(This used to be commit e6106e21a0b097ec45948a08f499e44d32db8d2a)
2007-10-10 13:42:15 -05:00
Stefan Metzmacher
fccbbf3546 r10997: r11980@SERNOX (orig r10037): metze | 2005-09-05 14:21:40 +0200
add struct nbt_peer_socket and use it instead of passing const char *addr, uint16 port everyhwere

 (tridge: can you review this please, (make test works)

 metze
(This used to be commit a599d7a4ae881c94be2c2d908a398838549942bb)
2007-10-10 13:39:52 -05:00
Andrew Tridgell
33da2fabe6 r10914: moved the ldap time string functions into ldb so they can be used by
the time attribute handling functions
(This used to be commit 93c296d52718e77f8b702e1721b548eaadc56c76)
2007-10-10 13:39:42 -05:00
Andrew Tridgell
a599edf04c r10913: This patch isn't as big as it looks ...
most of the changes are fixes to make all the ldb code compile without
warnings on gcc4. Unfortunately That required a lot of casts :-(

I have also added the start of an 'operational' module, which will
replace the timestamp module, plus add support for some other
operational attributes

In ldb_msg_*() I added some new utility functions to make the
operational module sane, and remove the 'ldb' argument from the
ldb_msg_add_*() functions. That argument was only needed back in the
early days of ldb when we didn't use the hierarchical talloc and thus
needed a place to get the allocation function from. Now its just a
pain to pass around everywhere.

Also added a ldb_debug_set() function that calls ldb_debug() plus sets
the result using ldb_set_errstring(). That saves on some awkward
coding in a few places.
(This used to be commit f6818daecca95760c12f79fd307770cbe3346f57)
2007-10-10 13:39:41 -05:00
Andrew Tridgell
36d73b0e71 r10894: make the handling of dn/distinguishedName much closer to real
ldap. Also ensure we put a objectclass on our private ldb's, so they
have some chance of being stored in ldap if you want to
(This used to be commit 1af2cc067f70f6654d08387fc28def67229bb06a)
2007-10-10 13:39:40 -05:00
Stefan Metzmacher
ab4d635b92 r10504: - seperate implementation specific stuff, from the generic composite
stuff.
- don't use SMBCLI_REQUEST_* state's in the genreic composite stuff
- move monitor_fn to libnet.

NOTE: I have maybe found some bugs, in code that is dirrectly in DONE or ERROR
      state in the _send() function. I haven't fixed this bugs in this
      commit! We may need some composite_trigger_*() functions or so.
      And maybe some other generic helper functions...

metze
(This used to be commit 4527815a0a9b96e460f301cb1f0c0b3964c166fc)
2007-10-10 13:38:57 -05:00
Simo Sorce
63b43dd12f r10477: expose transactions outside ldb and change the API once more
do not autostart transactions on ldb operations if a transaction is already in place
test transactions on winsdb

all my tests passes so far
tridge please confirm this is ok for you
(This used to be commit c2bb2a36bdbe0ec7519697a9a9ba7526a0defac2)
2007-10-10 13:38:52 -05:00
Andrew Tridgell
95040e9341 r10252: a recent checkin from simo changed the handling of BASE and SUBTREE
searches in ldb to be more ldap compliant, but broke the wins server
and the ejs ldb code. This fixes those up so 'make test' passes again.
(This used to be commit dff660c23c97114d0c1be705f4d6a9c114b60456)
2007-10-10 13:38:11 -05:00
Simo Sorce
3e4c4cff21 r9391: Convert all the code to use struct ldb_dn to ohandle ldap like distinguished names
Provide more functions to handle DNs in this form
(This used to be commit 692e35b7797e39533dd2a1c4b63d9da30f1eb5ba)
2007-10-10 13:33:32 -05:00
Andrew Tridgell
f4b488ec01 r8734: fixed the wins server for the new ldb DN restrictions.
This gets it working, but I'm rather worried about the speed. We used
to get more than 5000 ops/sec, but now we are down to around 15
ops/sec. I suspect a bug in ldb.
(This used to be commit 83727bf72c970effdc5995e2f6e7816a57887b5c)
2007-10-10 13:29:59 -05:00
Andrew Tridgell
ab9cef60a0 r8588: register wins server with irpc
(This used to be commit dc0ea36344c8eeeff0aa1afa01202fe1f477d307)
2007-10-10 13:29:42 -05:00
Simo Sorce
9d81592be3 r6768: Fix wrong comment
(This used to be commit 2f80b2070f1fc99151f0a583271cd9047d53bab6)
2007-10-10 13:16:42 -05:00
Andrew Tridgell
0b5fe8f7e1 r6750: some minor tweaks to the cldapd server
I can now join winxp -> samba4 DC using long name, and login. The nice
thing is there are no delays now, as the client likes the replies it gets
(This used to be commit 5aff7d36f3e535e305820ae42b023ae53cc0daf9)
2007-10-10 13:16:41 -05:00
Simo Sorce
b1b14817ea r5585: LDB interfaces change:
changes:
- ldb_wrap disappears from code and become a private structure of db_wrap.c
  thanks to our move to talloc in ldb code, we do not need to expose it anymore

- removal of ldb_close() function form the code
  thanks to our move to talloc in ldb code, we do not need it anymore
  use talloc_free() to close and free an ldb database

- some minor updates to ldb modules code to cope with the change and fix some
  bugs I found out during the process
(This used to be commit d58be9e74b786a11a57e89df36081d55730dfe0a)
2007-10-10 13:10:55 -05:00
Andrew Tridgell
b0fc1bfbcb r5454: moved the WINS server code into its own directory
(This used to be commit 0bb997127fe6c49361d9f1eaeda5d9321601a52a)
2007-10-10 13:10:48 -05:00