summaryrefslogtreecommitdiff
path: root/source3
AgeCommit message (Collapse)AuthorFilesLines
2009-02-17Fix an invalid typecastingVolker Lendecke1-1/+7
entry->num_of_strings is a uint16_t. Casting it with (int *)&entry->num_of_strings is wrong, because it gives add_string_to_array the illusion that the object "num" points to is an int, which it is not. In case we are running on a machine where "int" is 32 or 64 bits long, what happens with that cast? "add_string_to_array" interprets the byte field that starts where "num_of_strings" starts as an int. Under very particular circumstances this might work in a limited number of cases: When the byte order of an int is such that the lower order bits of the int are stored first, the subsequent bytes which do not belong to the uint16_t anymore happen to be 0 and the result of the increment still fits into the first 2 bytes of that int, i.e. the result is < 65536. The correct solution to this problem is to use the implicit type conversion that happens when an assignment is done. BTW, this bug is found if you compile with -O3 -Wall, it shows up as a warning: rpc_server/srv_eventlog_lib.c:574: warning: dereferencing type-punned pointer will break strict-aliasing rules Thanks, Volker
2009-02-17s3-rpcclient: use rpccli_spoolss_RemoteFindFirstPrinterChangeNotifyEx.Günther Deschner1-20/+29
Guenther
2009-02-16Fix bug 5920Yasuma Takeda1-1/+1
The length of the memcpy was calculated wrong, r->out.return_authenticator is a pointer
2009-02-16s3:netlogon: implement _netr_LogonGetCapabilities() with ↵Stefan Metzmacher1-4/+3
NT_STATUS_NOT_IMPLEMENTED This hopefully fixes bug #6100. metze
2009-02-16s3 auth: Add parameter that forces every user through an NSS lookupZach Loafman3-4/+35
When set to yes, "force username map" forces every user, even AD users, through an NSS lookup. This allows the token to be overridden with information from NSS in certain broken environments.
2009-02-16s3 perfcount: Fix segfault with smbclient 'echo 3 foo'Tim Prouty1-33/+11
2009-02-16s3 OneFS: Add defaults to the fake timestamp parametersTim Prouty2-8/+19
2009-02-16make receive_smb_raw_talloc more readableTim Prouty1-4/+4
2009-02-15Attempt to fix bug #6099. According to MicrosoftJeremy Allison1-17/+26
Windows 7 looks at the negotiate_flags returned in this structure *even if the call fails with access denied ! So in order to allow Win7 to connect to a Samba NT style PDC we set the flags before we know if it's an error or not. Jeremy.
2009-02-14remove accidental white spaceDerrell Lipman1-1/+0
2009-02-14enums are traditionally signed. Avoid use of high bit in bit flags.Derrell Lipman1-3/+3
2009-02-14Get rid of the warnings I had for testingDerrell Lipman1-5/+0
2009-02-14It seems some systems use f_flags instead of f_flag. Use the appropriate one.Derrell Lipman2-4/+28
2009-02-14Remove a pointless NULL checkVolker Lendecke1-3/+0
2009-02-14Fix some nonempty blank linesVolker Lendecke1-22/+22
2009-02-14Rename lp_smb_perfcount_module() to lp_perfcount_module() to match the ↵Volker Lendecke3-3/+3
parameter name
2009-02-14Replace a // style comment with a /* */ oneVolker Lendecke1-1/+1
2009-02-14Fix some C++ warningsVolker Lendecke1-7/+14
2009-02-14Make smb_load_perfcount_module staticVolker Lendecke1-1/+1
2009-02-14f_frsize field is not ubiquitous. Check for it.Derrell Lipman1-0/+4
2009-02-14The f_fsid field is not always an integer type. Don't set it in that case.Derrell Lipman1-0/+5
2009-02-14Ensure consistency of values on stack (caught by AIX compiler)Derrell Lipman1-16/+16
2009-02-14Check for the right error return valueDerrell Lipman1-2/+3
2009-02-14[Bug 6069] Add a fstatvfs function for libsmbclientDerrell Lipman4-26/+11
- Revert Tim's changes for the moment. I need to see what the issue is and arrange to use "struct statvfs" if at all possible. Derrell
2009-02-14Attempt to fix the build on Solaris 8Volker Lendecke1-1/+1
2009-02-14Fix a valgrind errorVolker Lendecke1-1/+5
2009-02-13s3 OneFS: Add recvfile implementationTim Prouty3-0/+198
2009-02-13s3 vfs: Fix SMB_VFS_RECVFILE/SENDFILE macrosTim Prouty1-4/+4
2009-02-13s3: Fix uninitialized const char *Tim Prouty1-0/+1
2009-02-13Enable total anonymization in vfs_smb_traffic_analyzer, by mapping any user ↵Holger Hetterich1-5/+16
names to the one given by anonymize_prefix, without generating a hash number. This setting is optional and is compatible with the module configuration format of Samba 3.3.
2009-02-14s3-spoolss: remove unused convert_printer_info.Günther Deschner1-31/+0
Guenther
2009-02-14s3-spoolss: use pidl for _spoolss_SetPrinter.Günther Deschner3-61/+31
Guenther
2009-02-14s3-spoolss: use pidl for _spoolss_AddPrinterEx.Günther Deschner3-64/+31
Guenther
2009-02-14s3-spoolss: add printer_info2_to_nt_printer_info2 and convert_printer_info_new.Günther Deschner1-0/+67
Guenther
2009-02-14s3-rpcclient: use rpccli_spoolss_AddPrinterEx.Günther Deschner1-16/+42
Guenther
2009-02-14s3-netlogon: some more appropriate debug messages.Günther Deschner1-13/+31
Guenther
2009-02-13Merge branch 'master' of ssh://jra@git.samba.org/data/git/sambaJeremy Allison2-3/+1
2009-02-13Parameterize in local.h the MAX_RPC_DATA_SIZE, and ensureJeremy Allison3-1/+56
that "offered" read from the rpc packet in spoolss is under that size. Tidyup from analysis from Veracode. Jeremy.
2009-02-13s3: Fix uninitialized variable warning (and bug).Zack Kirsch2-3/+1
2009-02-13Noted by Vericode analysis. Correctly use chroot().Jeremy Allison1-1/+5
Jeremy.
2009-02-13s3 libsmbclient: Fix fstatvfs to be more portableTim Prouty4-11/+26
The statvfs struct isn't guaranteed to be portable across operating systems. Since libsmbclient isn't actually calling statvfs and just using the statvfs struct to store similar information, this patch adds a new portable smbc_statvfs struct. This fixes a few of the failures in the build farm introduced by: ae259575c447e61665c8e7070c476914161b953f Derrell, please check.
2009-02-13s3 OneFS: Add vfs implementation for SMB_VFS_GET_REAL_FILE_NAMEAravind Srinivasan1-0/+41
2009-02-13s3: Test module for perfcount systemtodd stecher3-1/+370
Add 'perfcount module = pc_test' to exercise this module. Results are logged into smb.log every 50 operations (configurable via smb.conf).
2009-02-13Fix Coverity ID 740 (RESOURCE_LEAK)Volker Lendecke1-0/+2
2009-02-13Fix the build. When you do "make distclean; ./autogen; ./configure; make" ↵Jeremy Allison1-0/+2
and it still doesn't build you know it's messed up. Jeremy.
2009-02-13OneFS implementation of BRL VFS ops:Zack Kirsch5-4/+479
* Much of the beginning should look familiar, as I re-used the OneFS oplock callback record concept. This was necessary to keep our own state around - it really only consists of a lock state, per asynchronous lock that is currently unsatisfied. The onefs_cbrl_callback_records map to BLRs by the id. * There are 4 states an async lock can be in. NONE means there is no async currently out for the lock, as opposed to ASYNC. DONE means we've locked *every* lock (keep in mind a request can ask for multiple locks at a time.) ERROR is an error. * onefs_cbrl_async_success: The lock_num is incremented, and the state changed, so that when process_blocking_lock_queue is run, we will try the *next* lock, rather than the same one again. * onefs_brl_lock_windows() has some complicated logic: * We do a no-op if we're passed a BLR and the matching state is ASYNC -- this means Samba is trying to get the same lock twice, and we just need to wait longer, so we return an error. * PENDING lock calls happen when the lock is being queued on the BLQ -- we do async in this case. * We also do async in the case that we're passed a BLR, but the lock is not pending. This is an async lock being probed by process_blocking_lock_queue. * We do a sync lock for any normal first request of a lock. * Failure is returned, but it doesn't go to the client unless the lock has actually timed out.
2009-02-13Add VFS ops for Windows BRL: Lock, Unlock and Cancel:Zack Kirsch11-110/+358
This patch adds 3 new VFS OPs for Windows byte range locking: BRL_LOCK_WINDOWS, BRL_UNLOCK_WINDOWS and BRL_CANCEL_WINDOWS. Specifically: * I renamed brl_lock_windows, brl_unlock_windows and brl_lock_cancel to *_default as the default implementations of the VFS ops. * The blocking_lock_record (BLR) is now passed into the brl_lock_windows and brl_cancel_windows paths. The Onefs implementation uses it - future implementations may find it useful too. * Created brl_lock_cancel to do what brl_lock/brl_unlock do: set up a lock_struct and call either the Posix or Windows lock function. These happen to be the same for the default implementation. * Added helper functions: increment_current_lock_count() and decrement_current_lock_count(). * Minor spelling correction in brl_timeout_fn: brl -> blr. * Changed blocking_lock_cancel() to return the BLR that it has cancelled. This allows us to assert its the lock that we wanted to cancel. If this assert ever fires, this path will need to take in the BLR to cancel, rather than choosing on its own. * Adds a small helper function: find_blocking_lock_record_by_id(). Used by the OneFS implementation, but could be useful for others.
2009-02-13Remove typedef struct blocking_lock_record and move references to struct ↵Zack Kirsch1-19/+19
blocking_lock_record.
2009-02-13s4:configure: require the same version for external and internal libteventStefan Metzmacher1-1/+1
Until we reach 1.0.0, we better require the exact same version. metze
2009-02-13Fix an uninitialized variable, introdued with 4d100f2fVolker Lendecke1-1/+1