summaryrefslogtreecommitdiffstats
path: root/source/utils
Commit message (Collapse)AuthorAgeFilesLines
...
* added a nasty lock testing programAndrew Tridgell2000-05-031-0/+340
| | | | | | | | | | | it opens 2 connections to each of 2 servers, and opens 2 fnums on the same file on each connection (a total of 8 file descriptors) then it does random lock/unlock/reopen requests in a 100 byte range on the file and compares the results from the 2 servers. strangely enough, NT fails this test against itself right now - I'm still trying to figure that out.
* Added read overlay write lock on same fnum test to locktest2.Jeremy Allison2000-05-031-1/+117
| | | | | Added locktest5 for locking stacks. Jeremy.
* locking/posix.c: Fixed double-free nasty crash bug found by insure.Jeremy Allison2000-05-012-1/+10
| | | | | | utils/make_smbcodepage.c: utils/make_unicodemap.c: Insure 'make install' fixes. Jeremy.
* handle the special rule of *.* for old style listings when old_list isAndrew Tridgell2000-04-301-0/+3
| | | | true
* added cli_list_old() to allow for old style directory listing fromAndrew Tridgell2000-04-301-5/+12
| | | | masktest
* changed masktest to test the internal algorithm against one server,Andrew Tridgell2000-04-301-78/+30
| | | | rather than 2 servers
* YIPEE!!!!!Andrew Tridgell2000-04-301-78/+16
| | | | | | | | | | | We finally have a perfect emulation of Microsoft wildcard matching. The routine ms_fnmatch() does wildcard matching with all MS wildcards (including the unicode wildcards), and masktest against a NT4 workstation with hundreds of thousands of random exmaples has not found a single error. amazingly it is only about 60 lines of code, but it has taken us years to get it right. I didn't sleep much last night :)
* Fixed subtle unlocking bug when a file is closed. We need to store theJeremy Allison2000-04-271-1/+1
| | | | | | | | smbpid used when a file was opened in the files_struct. Else we use the wrong global_smbpid when we are closing the file and trying to remove the brl locks - this causes the brl locks to be left when the file is closed as the samba_context check fails. Jeremy.
* quick hack to get smbtorture working againAndrew Tridgell2000-04-271-0/+2
|
* fixed a memory leak in nmblookupAndrew Tridgell2000-04-251-0/+2
|
* load smb.conf and interfaces in masktest (to allow for netbios nameAndrew Tridgell2000-03-261-0/+4
| | | | resolution)
* Fixed parsing issue with HP printer defs reported by HP.Jeremy Allison2000-03-141-26/+62
| | | | Jeremy.
* added a tcon test: make two tconXs with the same user/pass, open a fileLuke Leighton2000-03-071-0/+72
| | | | with one of them and try to write to the file with the other.
* Fixed smbpasswd crash bugs found by Giulio.Jeremy Allison2000-03-011-3/+2
| | | | Jeremy.
* client/client.c:Jeremy Allison2000-02-251-53/+43
| | | | | | | libsmb/clientgen.c: Fixes for Win2k smbclient browsing. Other fixes implement smbpasswd -x user to delete users. Also allows swat to do the same. Jeremy.
* Added replacement functions sys_popen and sys_pclose. These are basedJeremy Allison2000-02-151-9/+35
| | | | | | | | | on the glibc source code and are safer than the traditional popen as they don't use a shell to exec the requested command. Now we have these functions they can be tightened up (environment etc.) as required to make a safe popen. It should now be safe to add the environement variable loading code to loadparm.c Jeremy.
* the beginnings of a fnmatch() based wildcard matching routineAndrew Tridgell2000-02-101-20/+66
|
* update masktest for new make_nmb_name() syntaxAndrew Tridgell2000-02-091-3/+3
|
* added masktest to head branch, in preparation for another assault onAndrew Tridgell2000-02-091-0/+435
| | | | the wildcard handling code
* 1) added void* state argument to tdb_traverse. guess what! there wereLuke Leighton2000-02-041-2/+2
| | | | | | | | | | | | | | | | | | two places i found where it was appropriate to _use_ that third argument, in locking.c and brlock.c! there was a static traverse_function and i removed the static variable, typecast it to a void*, passed it to tdb_traverse and re-cast it back to the traverse_function inside the tdb_traverse function. this makes the use of tdb_traverse() reentrant, which is never going to happen, i know, i just don't like to see statics lying about when there's no need for them. as i had to do in samba-tng, all uses of tdb_traverse modified to take the new void* state argument. 2) disabled rpcclient: referring people to use SAMBA_TNG rpcclient. i don't know how the other samba team members would react if i deleted rpcclient from cvs main. damn, that code's so old, it's unreal. 20 rpcclient commands, instead of about 70 in SAMBA_TNG.
* renamed DENY to DENY1Andrew Tridgell2000-01-161-5/+95
| | | | | added DENY2 test that checks all 648 deny combinations for the case of two opens on the same connection
* use GET_DENY_MODE() macroAndrew Tridgell2000-01-161-2/+1
|
* added code to allow traversal of the byte range lock databaseAndrew Tridgell2000-01-161-1/+29
| | | | this is used with "smbstatus -B" to dump the lock list
* casts and defines to make solaris happyAndrew Tridgell2000-01-142-3/+3
|
* we now pass all byte range locking testsAndrew Tridgell2000-01-141-14/+12
| | | | | the last piece was to use a smb timeout slightly larger than the locking timeout in bloking locks to prevent a race
* some more work on the byte range lockingAndrew Tridgell2000-01-141-14/+16
| | | | | | | | note the ugly global_smbpid - I hope that won't bethere for long, I just didn't want to do two lots of major surgery at the one time. Using global_smbpid avoids the big change of getting rid of our inbuf/outbuf interface to reply routines. I'll do that once the locking stuff passes all tests.
* greatly expanded the lock4 locking test. we now pass all but one testAndrew Tridgell2000-01-131-45/+93
| | | | - that should be fixed soon.
* I'm currently designing a new locking system (using a tdb database!)Andrew Tridgell2000-01-101-21/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | that will make us match NT semantics exactly and do away with the horrible fd multiplexing in smbd. this is some diag stuff to get me started. - added the ability to do read or write locks in clientgen.c - added a LOCK4 test to smbtorture. This produces a report on the server and its locking capabilities. For example, NT4 gives this: the same process cannot set overlapping write locks the same process can set overlapping read locks a different connection cannot set overlapping write locks a different connection can set overlapping read locks a different pid cannot set overlapping write locks a different pid can set overlapping read locks the same process can set the same read lock twice the same process cannot set the same write lock twice the same process cannot override a read lock with a write lock the same process can override a write lock with a read lock a different pid cannot override a write lock with a read lock the same process cannot coalesce read locks this server does strict write locking this server does strict read locking whereas Samba currently gives this: the same process can set overlapping write locks the same process can set overlapping read locks a different connection cannot set overlapping write locks a different connection can set overlapping read locks a different pid can set overlapping write locks a different pid can set overlapping read locks the same process can set the same read lock twice the same process can set the same write lock twice the same process can override a read lock with a write lock the same process can override a write lock with a read lock a different pid can override a write lock with a read lock the same process can coalesce read locks this server does strict write locking this server does strict read locking win95 gives this - I don't understand why! the same process cannot set overlapping write locks the same process cannot set overlapping read locks a different connection cannot set overlapping write locks a different connection cannot set overlapping read locks a different pid cannot set overlapping write locks a different pid cannot set overlapping read locks the same process cannot set the same read lock twice the same process cannot set the same write lock twice the same process cannot override a read lock with a write lock the same process cannot override a write lock with a read lock a different pid cannot override a write lock with a read lock the same process cannot coalesce read locks this server does strict write locking this server does strict read locking
* extent smbtorture to test with both an exe file and a dat fileAndrew Tridgell2000-01-081-37/+43
|
* cli_open() wasn't handling DENY_FCB or O_WRONLY correctly.Andrew Tridgell2000-01-081-1/+1
| | | | | | After fixing that I needed to use O_RDWR instead of O_WRONLY in several places to avoid the silly bug in MS servers that doesn't allow getattrE on a file opened with O_WRONLY
* added a DENY test that tests deny mode handling. It produces a matrixAndrew Tridgell2000-01-081-2/+86
| | | | | of 324 lines (6*6*3*3) of all possible deny mode behaviour. This allows us to compare with NT. We currently don't match :)
* this looks like a big commit, but it isn't really :)Andrew Tridgell2000-01-072-8/+8
| | | | | | | | This fixes our netbios scope handling. We now have a 'netbios scope' option in smb.conf and the scope option is removed from make_nmb_name() this was prompted by a bug in our PDC finding code where it didn't append the scope to the query of the '*' name.
* added the unexpected packet database (unexpected.tdb)Andrew Tridgell2000-01-031-4/+4
| | | | | | | | | | | | this means "nmblookup -S" now always works, even with broken servers the database stores all unexpected replies and these can be accessed by any client. while doing this I cleaned up a couple of functions, and put in place a better trn_id generator. in most places the code got quite a bit simpler due to the addition of simple helper functions. I haven't yet put the code in to take advantage of this for pdc replies - that will be next. Jeremys pdc finding code will then work :)
* - added tdb_flags option to tdb_open()Andrew Tridgell2000-01-021-4/+4
| | | | | | | | | - added TDB_CLEAR_IF_FIRST flag to clear the database if this is the first attached process. Useful for non-persistent databases like our locking area (this will also make upgrades to new database layouts easier) - use lock_path() in a couple of places - leave connections database open while smbd running - cleaned up some tdb code a little, using macros for constants
* improved error message in case the lock list is truncatedAndrew Tridgell1999-12-221-1/+8
|
* changed message is connections.tdb doesn't existAndrew Tridgell1999-12-211-1/+1
|
* converted all our existing shared memory code to use a tdb databaseAndrew Tridgell1999-12-211-24/+9
| | | | | | | | | | | | | instead of either sysv or mmap shared memory or lock files. this means we can now completely remove locking_shm.c locking_slow.c shmem.c shmem_sysv.c and lots of other things also got simpler locking.c got a bit larger, but is much better compartmentalised now
* first cut at using the tdb code for the connections structure, theAndrew Tridgell1999-12-211-192/+192
| | | | | SWAT status page and smbstatus. It made the code _much_ simpler, I wish we'd done a database module a long time ago!
* this was left out from the 2.0.6 mergeAndrew Tridgell1999-12-211-0/+236
|
* more files from 2.0.6Andrew Tridgell1999-12-171-0/+308
|
* 2nd phase of head branch sync with SAMBA_2_0 - this delets all the files ↵Andrew Tridgell1999-12-132-680/+0
| | | | that were in the head branch but weren't in SAMBA_2_0
* first pass at updating head branch to be to be the same as the SAMBA_2_0 branchAndrew Tridgell1999-12-1311-1534/+1224
|
* final part of "first" phase converting over to msrpc daemon architecture.Luke Leighton1999-12-121-2/+0
| | | | | | | | | | | | done a minimal amout of clean-up in the Makefile, removing unnecessary modules from the link stage. this is not complete, yet, and will involve some changes, for example to smbd, to remove dependencies on the password database API that shouldn't be there. for example, smbd should not ever call getsmbpwXXX() it should call the Samr or Lsa API. this first implementation has minor problems with not reinstantiating the same services as the caller. the "homes" service is a good example.
* OK. This code works on a RedHat 6.0 system. However smbpasswdGerald Carter1999-12-091-0/+2
| | | | | | | | | | | | | | | | | time out of sending the session setup on Solaris 2.6. No idea. I'll work on it some tomorrow. This is to fix the "Unable to setup password vectors" thingy. Also changed an inet_aton() to inet_addr() as the former is not very portable :-) Luke, I set the redir flag to false because the connection to the smb-agent was failing and smbpasswd bombed. Double check me on this one. -jc
* ABOUT TIME!!!!!!!!Luke Leighton1999-12-081-41/+28
| | | | | | | | | | | | | | | damn, this one is bad. started, at least two days ago, to add an authentication mechanism to the smbd<->msrpc redirector/relay, such that sufficient unix / nt information could be transferred across the unix socket to do a become_user() on the other side of the socket. it is necessary that the msrpc daemon inherit the same unix and nt credentials as the smbd process from which it was spawned, until such time as the msrpc daemon receives an authentication request of its own, whereupon the msrpc daemon is responsible for authenticating the new credentials and doing yet another become_user() etc sequence.
* created create_pipe_socket() function.Luke Leighton1999-12-052-94/+5
|
* argh! how horrible! spent ages working out why packets weren't beingLuke Leighton1999-12-041-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | received properly when a UDP "retry" occurs. it's because reads and writes must be interleaved / matched. scenario: nmblookup connects to agent, sends request. agent receives request, broadcasts it on 137. agent RECEIVES 137 broadcast, sends it to nmblookup agent receives RESPONSE to 137 broadcast, sends it to nmblookup. if reads are not equally interspersed with writes, then second send will fail. if you think this is odd behaviour and that the agent should be filtering its own UDP traffic, think again. agent will be, potentially, redirecting nmbd traffic (including WINS server) not just client programs.
* even more cool! nmb-agent moved over to new vagent style, too!Luke Leighton1999-12-041-229/+46
|
* cool! created higher-order function table for agent redirection.Luke Leighton1999-12-041-216/+37
|
* more similar agent codeLuke Leighton1999-12-042-47/+43
|