Samba and MS Shadow Copy

Stefan (metze) Metzmacher metze at metzemix.de
Wed Aug 6 11:57:26 GMT 2003


At 12:07 06.08.2003 +0200, Stefan (metze) Metzmacher wrote:
>At 11:08 06.08.2003 +0200, Stefan (metze) Metzmacher wrote:
>>At 10:59 06.08.2003 +0200, Stefan (metze) Metzmacher wrote:
>>>At 13:22 04.08.2003 -0400, Ken Cross wrote:
>>>>typedef struct
>>>>
>>>>{
>>>>
>>>>     uint32      num_volumes;    /* Total number of shadow volumes 
>>>> currently
>>>>mounted */
>>>>     uint32      num_labels;     /* Number of volume labels in the "labels"
>>>>array */
>>>>     uint32      data_size;      /* Total bytes being sent back */
>>>
>>>This is not what I see in the trace you sent to me...
>>>It's const 0x98 0x00 0x00 0x00 on the wire
>>>for both calls
>>>
>>>
>>>>     smb_ucs2_t  labels[2];      /* Concatenated list of 
>>>> null-terminated UCS2
>>>>(2-byte) labels */
>>>>} SHADOW_COPY_DATA;
>>>>
>>>>
>>>>num_volumes is the number of snapshots available for this volume.
>>>>Determining this value is highly dependent on the file system.
>>>>
>>>>data_size should be 50 * num_volumes, since each label is exactly 50 bytes
>>>>long (24 UCS2 characters + 1 UCS2 null terminator).
>>>>
>>>>If max_data_count == sizeof( SHADOW_COPY_DATA ) == 16, then the handler 
>>>>must
>>>>compute num_volumes and data_size, and the other elements must be zero.
>>>>Nothing should be returned in labels.
>>>
>>>the lables field is 0x70 0x00 0x5c 0x00
>>>in this case....
>>>
>>>>If max_data_count > 16, then fill the labels array with UCS2 strings in
>>>>*exactly* this format:
>>>>
>>>>    @GMT-YYYY.MM.DD-HH.MM.SS
>>>>
>>>>which is the timestamp of the snapshot, e.g., "@GMT-2003.03.03-03.04.04".
>>>>Set num_labels to the number of labels provided (should be the same as
>>>>num_volumes).
>>>
>>>
>>>and there are extra 6 0x00 bytes at the end
>>>
>>>Can you send also a trace from a windows client a samba server?
>>
>>also a trace of the win2k3 server when there are more or less then 3 volumes.
>>
>>to see if the 6 0x00  extra bytes are constant...
>>
>>what happens when the amount of label cause the data_count to be greater 
>>then max_data_count?
>>
>>a trace of this would be fine too...
>>
>>does the win2k3 return NT_STATUS_BUFFER_TOO_SMALL
>>
>>or does returns paged results....
>
>what is if we have 0 volumes and lables?

My winXP sp1 box doesn't send the ioctl call over the wire :-(

NTFILMON from www.sysinternals.com

shows IOCTL:0x14019F    INVALID DEVICE REQUEST

but ethereal didn't show anything...

Is any flag that says this is enabled?



metze
-----------------------------------------------------------------------------
Stefan "metze" Metzmacher <metze at metzemix.de> 




More information about the samba-technical mailing list