| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change parameter "wide links" to default to "no".
Ensure "wide links = no" if "unix extensions = yes" on a share.
Fix man pages to refect this.
Remove "within share" checks for a UNIX symlink set - even if
widelinks = no. The server will not follow that link anyway.
Correct DEBUG message in check_reduced_name() to add missing "\n"
so it's really clear when a path is being denied as it's outside
the enclosing share path.
Jeremy.
(cherry picked from commit 9e64c33b7757dd4528a9c8d31d0c0c159a33daf8)
|
|
|
|
|
|
|
|
|
| |
Data -> Fille Attributes are returned as 0x220 for LANMAN2.1 dialect
Ensure dos_mode can return FILE_ATTRIBUTE_NORMAL, then filter the returned attributes by protocol level.
This makes us consistant in returning DOS attrs across all replies. Tested on OS/2 by Günter Kukkukk.
Jeremy.
(cherry picked from commit 22332e08ab5b406ca603576b29fcaf0c1f786708)
|
|
|
|
|
|
| |
directory with a lot of files. Jeremy.
(cherry picked from commit a6e7be60322b981f9eb81f2b686d28223bd735bc)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is needed to support some special app I've just come across where I had to
set the SPARSE_FILES bit (0x40) to make it work against Samba at all. There
might be others to fake. This is definitely a "Don't touch if you don't know
what you're doing" thing, so I decided to make this an undocumented parametric
parameter.
I know this sucks, so feel free to beat me up on this. But I don't think it
will hurt.
(cherry picked from commit a5cace128d1dcabd6cc90dda71a09dfa8ee8c6f6)
Fix bug #6765.
(cherry picked from commit af0c2b78f7b697fae0fae6f88a5c9922abc7c514)
|
|
|
|
| |
(cherry picked from commit e971428f137dcb42e8b735386d79f1b3a6effe34)
|
|
|
|
|
|
|
| |
Fixes bug #6593.
Jeremy.
(cherry picked from commit c704e22806198a620d7e058c8d69c144ce096837)
|
|
|
|
|
|
|
|
|
|
| |
extensions=yes" are set - and using latest cifs vfs client
Cancel out any pending "sticky" writes or "last write" changes when
doing a UNIX info level set.
Jeremy.
(cherry picked from commit b971860e01a3e616b0dd21990c054c8f8356f513)
(cherry picked from commit 3c8e5d5339ec246bca846aee48ecfba74c7d7c69)
|
|
|
|
| |
(cherry picked from commit 1a0005e1c508cf3b170d1c7e43b94a47b2820506)
|
|
|
|
|
|
|
|
|
|
|
| |
The change to smbd/trans2.c opens up
SETFILEINFO calls to POSIX_OPEN only. The change to first smbd/open.c closes 2
holes that would have been exposed by allowing POSIX_OPENS on readonly shares,
and their ability to set arbitrary flags permutations. The O_CREAT ->
O_CREAT|O_EXCL change removes an illegal combination (O_EXCL without O_CREAT)
that previously was being passed down to the open syscall.
Jeremy.
(cherry picked from commit d49ae9c87d182f32702a0b6a1cc2a2038f31d81d)
|
|
|
|
|
|
| |
directory name.
Jeremy.
(cherry picked from commit 689664ad7acf13b07409abd4c2820dbe10255b68)
|
|
|
|
|
|
|
|
|
| |
This is a follow up to 69d61453df6019caef4e7960fa78c6a3c51f3d2a to
adjust the API to allow the lower layers allocate memory. Now the
memory can explicitly be freed rather than relying on talloc_tos().
Signed-off-by: Tim Prouty <tprouty@samba.org>
(cherry picked from commit bfe7383d7f0349fec796d04772d42d566f7f083b)
|
|
|
|
|
|
|
|
| |
sbuf as invalid (if not already read via stat()). Still trying
to find the build farm RAW-STREAM errors and it's happening
in a openX call....
Jeremy.
(cherry picked from commit 940c84fcc75085ee4f1180d4d2a8e718142e4eb6)
|
|
|
|
| |
Jeremy.
|
|
|
|
|
|
|
| |
Was missing case of "If file exists open. If file doesn't exist error."
Damn damn damn. CIFSFS client will have to have fallback cases
for this error for a long time.
Jeremy.
|
|
|
|
|
| |
Fixes the new RAW-STREAMS torture test.
Jeremy.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
| |
search requests.
By default this VFS call is a NOOP, but the onefs vfs module takes advantage
of it to initialize direntry search caches at the beginning of each
TRANS2_FIND_FIRST, TRANS2_FIND_NEXT, SMBffirst, SMBsearch, and SMBunique
|
|
|
|
|
|
|
| |
This changelist allows for the addition of custom performance
monitoring modules through smb.conf. Entrypoints in the main message
processing code have been added to capture the command, subop, ioctl,
identity and message size statistics.
|
|
|
|
|
| |
This allows module implementors to customize what allocation size is
returned to the client.
|
|
|
|
|
|
|
|
|
| |
1) Add in smb_file_time struct to clarify code and make room for createtime.
2) Get and set create time from SMB messages.
3) Fixup existing VFS modules + examples Some OS'es allow for the
setting of the birthtime through kernel interfaces. This value is
generically used for Windows createtime, but is not settable in the
code today.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
version.h changes rather frequently. Since it is included via includes.h,
this means each C file will be a cache miss. This applies to the following
situations:
* When building a new package with a new Samba version
* building in a git branch after calling mkversion.sh
after a new commit (i.e. virtually always)
This patch improves the situation in the following way:
* remove inlude "version.h" from includes.h
* Use samba_version_string() instead of SAMBA_VERSION_STRING
in files that use no other macro from version.h instead of
SAMBA_VERSION_STRING.
* explicitly include "version.h" in those files that use more
macros from "version.h" than just SAMBA_VERSION_STRING.
Michael
|
|
|
|
|
|
| |
The goal is to move all this variables into a big context structure.
metze
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
const char *foo, means a non-const pointer to
a const char.
const char * const foo, means a const pointer to
a const char.
char * const foo, would mean a const pointer to
a non-const char.
metze
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When there are enough streams on a file to fill up the max_data_count
when responding to a trans2 streaminfo, samba is returning
NT_STATUS_BUFFER_TOO_SMALL. Windows handles this by returning
NT_STATUS_BUFFER_OVERFLOW while still sending as much of the data that
it can fit into the buffer. When the windows client sees
BUFFER_OVERFLOW, it retries the streaminfo with a larger buffer (2x).
The windows client starts at 2K and will continue increasing the
buffer size by two until it reaches 64K. If the streams don't fit in
64K the windows client seems to give up.
This patch fixes marshall_stream_info to overfill the buffer by 1
stream so that send_trans2_replies can properly detect the overflow
and return the correct status.
|
|
|
|
| |
Jeremy.
|
|
|
|
| |
Jeremy.
|
|
|
|
|
|
| |
This replaces the is_dos_path bool with a more future-proof argument.
The next step is to plumb INTERNAL_OPEN_ONLY through this flag instead
of overridding the oplock_request.
|
|
|
|
| |
SMB_VFS_CREATE_FILE
|
|
|
|
|
| |
Now unix paths can be differentiated from windows paths so the
underlying create_file implementations can convert paths correctly.
|
|
|
|
| |
Modify all callers of create_file to go through SMB_VFS_CREATE_FILE
|
|
|
|
| |
metze
|
|
|
|
|
|
| |
main file was deleted.
metze
|
|
|
|
|
|
|
|
| |
The Windows Explorer creates temporary streams and renames
them later via SFILEINFO_RENAME_INFO. The newname comes
in as ":Stream:$DATA".
metze
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This is the one where I found the problem that led to 3.2.5. So if there is one
checkin in the last year that I would like others to review and *understand*,
it is this one :-)
Volker
|
| |
|
|
|
|
|
|
|
|
|
| |
This fixes a potential crash bug, a client can make us read memory we
should not read. Luckily I got the disp checks right...
Volker
(cherry picked from commit 64a1d80851da5b05e70ec6c96f6e9bd473748369)
(cherry picked from commit f04c5650a3aeca23591ddc781c4b297caaf9bb3f)
|
|
|
|
|
| |
Instead, fix up the outbuf in send_xx_reply. In those routines, we know
what we are returning.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Jeremy.
|
|
|
|
|
|
|
|
| |
If total_data == 4 Windows doesn't care what values
are placed in that field, it just ignores them.
The System i QNTC IBM SMB client puts bad values here,
so ignore them.
Jeremy.
|
| |
|
| |
|