1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00

s3: Add some asserts to the filename util functions

In the smb_filename struct stream_name must equal NULL if there
is no stream name.  These asserts should catch any future offenders
of this invariant early.
This commit is contained in:
Tim Prouty 2009-07-20 14:32:32 -07:00
parent f4530f6d2a
commit 8e04c69e02

View File

@ -29,6 +29,9 @@ NTSTATUS get_full_smb_filename(TALLOC_CTX *ctx,
char **full_name)
{
if (smb_fname->stream_name) {
/* stream_name must always be NULL if there is no stream. */
SMB_ASSERT(smb_fname->stream_name[0] != '\0');
*full_name = talloc_asprintf(ctx, "%s%s", smb_fname->base_name,
smb_fname->stream_name);
} else {
@ -134,6 +137,10 @@ NTSTATUS copy_smb_filename(TALLOC_CTX *ctx,
const struct smb_filename *smb_fname_in,
struct smb_filename **smb_fname_out)
{
/* stream_name must always be NULL if there is no stream. */
if (smb_fname_in->stream_name) {
SMB_ASSERT(smb_fname_in->stream_name[0] != '\0');
}
*smb_fname_out = talloc_zero(ctx, struct smb_filename);
if (*smb_fname_out == NULL) {
@ -174,6 +181,11 @@ NTSTATUS copy_smb_filename(TALLOC_CTX *ctx,
***************************************************************************/
bool is_ntfs_stream_smb_fname(const struct smb_filename *smb_fname)
{
/* stream_name must always be NULL if there is no stream. */
if (smb_fname->stream_name) {
SMB_ASSERT(smb_fname->stream_name[0] != '\0');
}
if (lp_posix_pathnames()) {
return false;
}