|
|
/*++
Copyright (c) 1995 Microsoft Corporation
Module Name:
smtpsvc.idl
Abstract:
Contains the Smtp RPC interface specification for the SMTP server. This includes API from the following catagories:
Also contains the RPC specific data structures for these API.
Author:
Johnson Apacible (johnsona) 13-Oct-1995 Based on srvsvc.idl code from DanL and JohnsonA
Environment:
User Mode - Win32 - MIDL
Revision History:
Keith Lau (keithlau) 7/18/96 Created new RPCs Keith Lau (keithlau) 8/28/96 Created new SDK RPCs
--*/
// // Interface Attributes //
[ uuid(8cfb5d70-31a4-11cf-a7d8-00805f48a135), version(3.0), #ifdef __midl ms_union, #endif // __midl pointer_default(unique) ]
interface smtp {
import "import.idl"; #include <lmcons.h>
// // BUGBUG - take this definition out when midl understands LPWSTR etc //
typedef [handle] LPWSTR SMTP_HANDLE; typedef [handle] LPWSTR SMTP_IMPERSONATE_HANDLE;
// // Structures - Smtp //
typedef [switch_type(unsigned long)] union _STAT_INFO { [case(0)] PSMTP_STATISTICS_BLOCK_ARRAY StatInfo0; [default] ; } STAT_INFO, *PSTAT_INFO, *LPSTAT_INFO;
NET_API_STATUS NET_API_FUNCTION SmtprGetAdminInformation( [in, string, unique] SMTP_HANDLE pszServer, [out] LPSMTP_CONFIG_INFO * ppConfig, [in] DWORD dwInstance );
NET_API_STATUS NET_API_FUNCTION SmtprSetAdminInformation( [in, string, unique] SMTP_HANDLE pszServer, [in] LPSMTP_CONFIG_INFO pConfig, [in] DWORD dwInstance );
NET_API_STATUS SmtprQueryStatistics( [in,string,unique] SMTP_HANDLE ServerName, [in] DWORD Level, [out, switch_is(Level)] LPSTAT_INFO InfoStruct );
NET_API_STATUS SmtprClearStatistics( [in,string,unique] SMTP_HANDLE ServerName, [in] DWORD dwInstance );
NET_API_STATUS SmtprGetConnectedUserList( [in,string,unique] SMTP_HANDLE wszServerName, [out] LPSMTP_CONN_USER_LIST *ppConnUserList, [in] DWORD dwInstance );
NET_API_STATUS SmtprDisconnectUser( [in,string,unique] SMTP_HANDLE wszServerName, [in] DWORD dwUserId, [in] DWORD dwInstance );
NET_API_STATUS SmtprCreateUser( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in,string,unique] LPWSTR wszForwardEmail, [in] DWORD dwLocal, [in] DWORD dwMailboxSize, [in] DWORD dwMailboxMessageSize, [in,string,unique] LPWSTR wszVRoot, [in] DWORD dwInstance );
NET_API_STATUS SmtprDeleteUser( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in] DWORD dwInstance );
NET_API_STATUS SmtprGetUserProps( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [out] LPSMTP_USER_PROPS *ppUserProps, [in] DWORD dwInstance );
NET_API_STATUS SmtprSetUserProps( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in,unique] LPSMTP_USER_PROPS pUserProps, [in] DWORD dwInstance );
NET_API_STATUS SmtprCreateDistList( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in] DWORD dwType, [in] DWORD dwInstance );
NET_API_STATUS SmtprDeleteDistList( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in] DWORD dwInstance );
NET_API_STATUS SmtprCreateDistListMember( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in,string,unique] LPWSTR wszEmailMember, [in] DWORD dwInstance
);
NET_API_STATUS SmtprDeleteDistListMember( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in,string,unique] LPWSTR wszEmailMember, [in] DWORD dwInstance );
NET_API_STATUS SmtprGetNameList( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmail, [in] DWORD dwType, [in] DWORD dwRowsRequested, [in] BOOL fForward, [out] LPSMTP_NAME_LIST *ppNameList, [in] DWORD dwInstance
);
NET_API_STATUS SmtprGetNameListFromList( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszEmailList, [in,string,unique] LPWSTR wszEmail, [in] DWORD dwType, [in] DWORD dwRowsRequested, [in] BOOL fForward, [out] LPSMTP_NAME_LIST *ppNameList, [in] DWORD dwInstance );
NET_API_STATUS SmtprGetVRootSize( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszVRoot, [out] LPDWORD pdwBytes, [in] DWORD dwInstance );
NET_API_STATUS SmtprBackupRoutingTable( [in,string,unique] SMTP_HANDLE wszServerName, [in,string,unique] LPWSTR wszPath, [in] DWORD dwInstance );
#ifdef USE_OLD_SDK
// =================================================== // SMTP SDK RPCs //
NET_API_STATUS NET_API_FUNCTION SmtprGetUserProfileInformation( [in, string, unique] SMTP_HANDLE wszServer, [in, string, unique] LPWSTR wszEmail, [in, string, unique] LPWSTR wszExtensionDllName, [in, string, unique] LPWSTR wszKey, [out, string] LPWSTR *ppwszValue, [in, out] LPDWORD lpdwSize, [in] DWORD dwInstance );
NET_API_STATUS NET_API_FUNCTION SmtprSetUserProfileInformation( [in, string, unique] SMTP_HANDLE wszServer, [in, string, unique] LPWSTR wszEmail, [in, string, unique] LPWSTR wszExtensionDllName, [in, string, unique] LPWSTR wszKey, [in, string, unique] LPWSTR wszValue, [in] DWORD dwInstance
);
#endif
}
|