jcifs.dcerpc.msrpc.netdfs.idl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jcifs-krb5-jdk7 Show documentation
Show all versions of jcifs-krb5-jdk7 Show documentation
JCIFS is an Open Source client library that implements the CIFS/SMB networking protocol in 100% Java
[
uuid(4fc742e0-4a10-11cf-8273-00aa004ae673),
version(3.0)
]
interface netdfs
{
import "../rpc.idl";
const uint32_t DFS_VOLUME_FLAVOR_STANDALONE = 0x100;
const uint32_t DFS_VOLUME_FLAVOR_AD_BLOB = 0x200;
const uint32_t DFS_STORAGE_STATE_OFFLINE = 0x0001;
const uint32_t DFS_STORAGE_STATE_ONLINE = 0x0002;
const uint32_t DFS_STORAGE_STATE_ACTIVE = 0x0004;
typedef struct {
[string] wchar_t *entry_path;
} DfsInfo1;
typedef struct {
uint32_t count;
[size_is(count)] DfsInfo1 *s;
} DfsEnumArray1;
typedef struct {
uint32_t state;
[string] wchar_t *server_name;
[string] wchar_t *share_name;
} DfsStorageInfo;
typedef struct {
[string] wchar_t *path;
[string] wchar_t *comment;
uint32_t state;
uint32_t num_stores;
[size_is(num_stores)] DfsStorageInfo *stores;
} DfsInfo3;
typedef struct {
uint32_t count;
[size_is(count)] DfsInfo3 *s;
} DfsEnumArray3;
typedef struct {
[string] wchar_t *dfs_name;
} DfsInfo200;
typedef struct {
uint32_t count;
[size_is(count)] DfsInfo200 *s;
} DfsEnumArray200;
typedef struct {
uint32_t flags;
[string] wchar_t *dfs_name;
} DfsInfo300;
typedef struct {
uint32_t count;
[size_is(count)] DfsInfo300 *s;
} DfsEnumArray300;
typedef union {
[case(1)] DfsEnumArray1 *info1;
[case(3)] DfsEnumArray3 *info3;
[case(200)] DfsEnumArray200 *info200;
[case(300)] DfsEnumArray300 *info300;
} DfsEnumInfo;
typedef struct {
uint32_t level,
[switch_is(level)] DfsEnumInfo e;
} DfsEnumStruct;
[op(0x15)]
int NetrDfsEnumEx([in,string,unique] wchar_t dfs_name,
[in] uint32_t level,
[in] uint32_t prefmaxlen,
[in,out,unique] DfsEnumStruct *info,
[in,out,unique] uint32_t *totalentries);
}