// nntpadm.idl : IDL source for nntpadm.dll // // This file will be processed by the MIDL tool to // produce the type library (nntpadm.tlb) and marshalling code. midl_pragma warning(disable:2362) // too many methods in the interface cpp_quote("") cpp_quote("/*++") cpp_quote("") cpp_quote("Copyright (c) 1997 Microsoft Corporation") cpp_quote("") cpp_quote("Module Name: nntpadm.h") cpp_quote("") cpp_quote(" Nntp Admin Object Interfaces") cpp_quote("") cpp_quote("--*/") cpp_quote("") cpp_quote("#ifndef _NNTPADM_IDL_INCLUDED_") cpp_quote("#define _NNTPADM_IDL_INCLUDED_") cpp_quote("") cpp_quote("#include ") cpp_quote("") // // Define GUIDS: // // IIDs: cpp_quote("") cpp_quote("/* IIDs: */") cpp_quote("") cpp_quote("DEFINE_GUID(IID_INntpAdmin,0x3241F062,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(IID_INntpService,0x3241F07B,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(IID_INntpVirtualServer,0x3241F067,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(IID_INntpAdminFeeds,0x3241F06C,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(IID_INntpAdminExpiration,0x772bbad0,0x7a22,0x11d0,0x89,0x5d,0x00,0xaa,0x00,0xa7,0x4b,0xf2);") cpp_quote("DEFINE_GUID(IID_INntpAdminGroups,0x3241F071,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(IID_INntpAdminSessions,0x3241F076,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(IID_INntpAdminRebuild,0xdee3b230,0xa3c2,0x11d0,0x89,0x6e,0x00,0xaa,0x00,0xa7,0x4b,0xf2);") cpp_quote("DEFINE_GUID(IID_INntpServerBinding,0x9fc9efd0,0xa535,0x11d0,0x89,0x6f,0x00,0xaa,0x00,0xa7,0x4b,0xf2);") cpp_quote("DEFINE_GUID(IID_INntpServerBindings,0x9fc9efd1,0xa535,0x11d0,0x89,0x6f,0x00,0xaa,0x00,0xa7,0x4b,0xf2);") cpp_quote("DEFINE_GUID(IID_INntpVirtualRoot,0xaa068dc0,0xa635,0x11d0,0x89, 0x6f, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_INntpVirtualRoots,0xaa068dc1,0xa635,0x11d0,0x89, 0x6f, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_INntpFeed,0xcdde8050,0xae09,0x11d0, 0x89, 0x74, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_INntpOneWayFeed,0xcdde8051,0xae09,0x11d0, 0x89, 0x74, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_ITcpAccess,0xcbf09fa0,0xb9ac,0x11d0,0x89, 0x77, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_ITcpAccessExceptions,0xcbf09fa1,0xb9ac,0x11d0,0x89, 0x77, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_ITcpAccessException,0x326e38c0,0xc32a,0x11d0,0x89, 0x89, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") // CLSIDs: cpp_quote("") cpp_quote("/* CLSIDs: */") cpp_quote("") cpp_quote("DEFINE_GUID(CLSID_CNntpAdmin,0x3241F066,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(CLSID_CNntpVirtualServer,0x3241F06B,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(CLSID_CNntpService,0x3241F07F,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(CLSID_CNntpAdminFeeds,0x3241F070,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(CLSID_CNntpAdminExpiration,0x772bbad1,0x7a22,0x11d0,0x89,0x5d,0x00,0xaa,0x00,0xa7,0x4b,0xf2);") cpp_quote("DEFINE_GUID(CLSID_CNntpAdminGroups,0x3241F075,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(CLSID_CNntpAdminSessions,0x3241F07A,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("DEFINE_GUID(CLSID_CNntpAdminRebuild,0xdee3b231,0xa3c2,0x11d0,0x89,0x6e,0x00,0xaa,0x00,0xa7,0x4b,0xf2);") cpp_quote("DEFINE_GUID(CLSID_CNntpVirtualRoot,0x28e6a820,0xa6c4,0x11d0,0x89, 0x6f, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(CLSID_CNntpFeed,0x5bddc640,0xae09,0x11d0, 0x89, 0x74, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(CLSID_CNntpOneWayFeed,0x5bddc641,0xae09,0x11d0, 0x89, 0x74, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") // LibIDs: cpp_quote("") cpp_quote("/* LIBIDs: */") cpp_quote("") cpp_quote("DEFINE_GUID(LIBID_NNTPADMLib,0x3241F060,0x6D68,0x11D0,0x89,0x50,0x00,0xAA,0x00,0xA7,0x4B,0xF2);") cpp_quote("") cpp_quote("DEFINE_GUID(CLSID_CAdsNntpVirtualServer,0xcbf09fa2,0xb9ac,0x11d0,0x89, 0x77, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") cpp_quote("DEFINE_GUID(IID_IAdsNntpVirtualServer,0xcbf09fa3,0xb9ac,0x11d0,0x89, 0x77, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") /* Don't allow INntpService for now... cpp_quote("DEFINE_GUID(CLSID_CTcpAccessException,0x326e38c2,0xc32a,0x11d0,0x89, 0x89, 0x00, 0xaa, 0x00, 0xa7, 0x4b, 0xf2);") */ #define DISPID_IADs_UPPER_BOUND 100 [ uuid(3241F060-6D68-11D0-8950-00AA00A74BF2), version(1.0), helpstring("nntpadm 1.0 Type Library") ] library NNTPADMLib { importlib("stdole2.tlb"); importlib("activeds.tlb"); // Forward declarations: interface INntpServerBinding; interface INntpServerBindings; interface INntpVirtualRoots; interface INntpVirtualRoot; interface INntpFeed; interface INntpOneWayFeed; interface ITcpAccess; interface ITcpAccessExceptions; interface ITcpAccessException; ////////////////////////////////////////////////////////////////////// // // Type definitions: // ////////////////////////////////////////////////////////////////////// // Define our feed types: typedef enum { NNTP_FEED_TYPE_PEER = 1, NNTP_FEED_TYPE_MASTER = 2, NNTP_FEED_TYPE_SLAVE = 3 } NNTP_FEED_SERVER_TYPE; typedef enum { NNTP_FEED_ACTION_PULL = 1, NNTP_FEED_ACTION_PUSH = 2, NNTP_FEED_ACTION_ACCEPT = 3 } NNTP_FEED_ACTION; typedef enum { NNTP_SERVER_STATE_UNKNOWN = 0, NNTP_SERVER_STATE_STARTING, NNTP_SERVER_STATE_STARTED, NNTP_SERVER_STATE_STOPPING, NNTP_SERVER_STATE_STOPPED, NNTP_SERVER_STATE_PAUSING, NNTP_SERVER_STATE_PAUSED, NNTP_SERVER_STATE_CONTINUING } NNTP_SERVER_STATE; ////////////////////////////////////////////////////////////////////// // // Interface Definitions: // ////////////////////////////////////////////////////////////////////// [ object, uuid(3241F062-6D68-11D0-8950-00AA00A74BF2), dual, helpstring("INntpAdmin Interface"), pointer_default(unique) ] interface INntpAdmin : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Pointers to other INntpAdmin interfaces: /* [propget, helpstring("INntpVirtualServer interface")] HRESULT ServiceAdmin ( [out, retval] IDispatch ** ppIDispatch ); */ [propget, helpstring("INntpService")] HRESULT ServerAdmin ( [out, retval] IDispatch ** ppIDispatch ); // Which service to configure: [propget, helpstring("Computer Name to Configure")] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring("")] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); // Versioning: [propget, helpstring("Versioning Information")] HRESULT HighVersion ( [out, retval] long * pdwHighVersion ); [propget, helpstring("Versioning Information")] HRESULT LowVersion ( [out, retval] long * pdwLowVersion ); [propget, helpstring("Build Number")] HRESULT BuildNum ( [out, retval] long * pdwBuildNumber ); [propget, helpstring("Service version #")] HRESULT ServiceVersion ( [out, retval] long * pdwServiceVersion ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring("Enumerate service instances")] HRESULT EnumerateInstances ( [out, retval] SAFEARRAY (long) * psaInstanceIds ); [helpstring("VB script version")] HRESULT EnumerateInstancesVariant ( [out, retval] SAFEARRAY (VARIANT) * psaInstanceIds ); [helpstring("Create a new service instance")] HRESULT CreateInstance ( [in] BSTR strNntpFileDirectory, [in] BSTR strHomeDirectory, [in] BSTR strProgId, [in] BSTR strMdbGuid, [out, retval] long * pdwInstanceId ); [helpstring("Delete a service instance")] HRESULT DestroyInstance ([in] long dwInstanceId ); [helpstring("Translate an error code into a string")] HRESULT ErrorToString ( [in] long dwErrorCode, [out, retval] BSTR * pstrError ); [helpstring("HTML tokenize the given string")] HRESULT Tokenize ( [in] BSTR strIn, [out, retval] BSTR * pstrOut ); [helpstring("Truncate the given string")] HRESULT Truncate ( [in] BSTR strIn, [in] long dwMaxChars, [out, retval] BSTR * pstrOut ); }; [ object, uuid(3241F07B-6D68-11D0-8950-00AA00A74BF2), dual, helpstring("INntpService Interface"), pointer_default(unique) ] interface INntpService : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// [propget, helpstring("")] HRESULT SmtpServer ( [out, retval] BSTR * pstrSmtpServer ); [propput] HRESULT SmtpServer ( [in] BSTR strSmtpServer ); [propget, helpstring("")] HRESULT AllowClientPosts ( [out, retval] BOOL * pfAllowClientPosts ); [propput] HRESULT AllowClientPosts ( [in] BOOL fAllowClientPosts ); [propget, helpstring("")] HRESULT AllowFeedPosts ( [out, retval] BOOL * pfAllowFeedPosts ); [propput] HRESULT AllowFeedPosts ( [in] BOOL fAllowFeedPosts ); [propget, helpstring("")] HRESULT AllowControlMsgs ( [out, retval] BOOL * pfAllowControlMsgs ); [propput] HRESULT AllowControlMsgs ( [in] BOOL fAllowControlMsgs ); [propget, helpstring("")] HRESULT DefaultModeratorDomain ( [out, retval] BSTR * pstrDefaultModeratorDomain ); [propput] HRESULT DefaultModeratorDomain ( [in] BSTR strDefaultModeratorDomain ); [propget, helpstring("")] HRESULT DisableNewnews ( [out, retval] BOOL * pfDisableNewnews ); [propput] HRESULT DisableNewnews ( [in] BOOL fDisableNewnews ); [propput] HRESULT TestPass ( [in] BSTR strTestPass ); [propget, helpstring("")] HRESULT TestStringArray ( [out, retval] SAFEARRAY(VARIANT) * psastr ); [propput] HRESULT TestStringArray ( [in] SAFEARRAY(VARIANT) psastr ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring("Get server properties")] HRESULT Get (); [helpstring("Set server properties")] HRESULT Set ( [in, defaultvalue(FALSE)] BOOL fFailIfChanged ); }; [ object, uuid(3241F067-6D68-11D0-8950-00AA00A74BF2), dual, helpstring("INntpVirtualServer Interface"), pointer_default(unique) ] interface INntpVirtualServer : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Which service to configure: [propget, helpstring("Computer Name to Configure")] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring("")] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); // Other admin Interfaces on a virtual server: [propget, helpstring("INntpAdminFeeds interface")] HRESULT FeedsAdmin ( [out, retval] IDispatch ** ppIDispatch ); [propget, helpstring("INntpAdminGroups")] HRESULT GroupsAdmin ( [out, retval] IDispatch ** ppIDispatch ); [propget, helpstring("INntpAdminExpiration")] HRESULT ExpirationAdmin ( [out, retval] IDispatch ** ppIDispatch ); [propget, helpstring("INntpAdminSessions")] HRESULT SessionsAdmin ( [out, retval] IDispatch ** ppIDispatch ); [propget, helpstring("INntpAdminRebuild")] HRESULT RebuildAdmin ( [out, retval] IDispatch ** ppIDispatch ); [propget, helpstring("INntpVirtualRoots")] HRESULT VirtualRoots ( [out, retval] INntpVirtualRoots ** ppINntpVirtualRoots ); [propget, helpstring("INntpVirtaulRoots")] HRESULT VirtualRootsDispatch ( [out, retval] IDispatch ** ppIDispatch ); [propget, helpstring("ITcpAccess ")] HRESULT TcpAccess ( [out, retval] ITcpAccess ** ppTcpAccess ); /* [propget, helpstring("INntpVirtualRoot for home directory")] HRESULT HomeDirectory ( [out, retval] INntpVirtualRoot ** ppINntpVirtualRoot ); [propput] HRESULT HomeDirectory ( [in] INntpVirtualRoot * pINntpVirtualRoot ); */ // Overridable server properties: [propget, helpstring("")] HRESULT ArticleTimeLimit ( [out, retval] long * pdwArticleTimeLimit ); [propput] HRESULT ArticleTimeLimit ( [in] long dwArticleTimeLimit ); [propget, helpstring("")] HRESULT HistoryExpiration ( [out, retval] long * pdwHistoryExpiration ); [propput] HRESULT HistoryExpiration ( [in] long dwHistoryExpiration ); [propget, helpstring("")] HRESULT HonorClientMsgIDs ( [out, retval] BOOL * pfHonorClientMsgIDs ); [propput] HRESULT HonorClientMsgIDs ( [in] BOOL fHonorClientMsgIDs ); [propget, helpstring("")] HRESULT SmtpServer ( [out, retval] BSTR * pstrSmtpServer ); [propput] HRESULT SmtpServer ( [in] BSTR strSmtpServer ); [propget, helpstring("")] HRESULT AdminEmail ( [out, retval] BSTR * pstrAdminEmail ); [propput] HRESULT AdminEmail ( [in] BSTR strAdminEmail ); [propget, helpstring("")] HRESULT AllowClientPosts ( [out, retval] BOOL * pfAllowClientPosts ); [propput] HRESULT AllowClientPosts ( [in] BOOL fAllowClientPosts ); [propget, helpstring("")] HRESULT AllowFeedPosts ( [out, retval] BOOL * pfAllowFeedPosts ); [propput] HRESULT AllowFeedPosts ( [in] BOOL fAllowFeedPosts ); [propget, helpstring("")] HRESULT AllowControlMsgs ( [out, retval] BOOL * pfAllowControlMsgs ); [propput] HRESULT AllowControlMsgs ( [in] BOOL fAllowControlMsgs ); [propget, helpstring("")] HRESULT DefaultModeratorDomain ( [out, retval] BSTR * pstrDefaultModeratorDomain ); [propput] HRESULT DefaultModeratorDomain ( [in] BSTR strDefaultModeratorDomain ); [propget, helpstring("")] HRESULT CommandLogMask ( [out, retval] long * pdwCommandLogMask ); [propput] HRESULT CommandLogMask ( [in] long dwCommandLogMask ); [propget, helpstring("")] HRESULT DisableNewnews ( [out, retval] BOOL * pfDisableNewnews ); [propput] HRESULT DisableNewnews ( [in] BOOL fDisableNewnews ); [propget, helpstring("")] HRESULT ExpireRunFrequency ( [out, retval] long * pdwExpireRunFrequency ); [propput] HRESULT ExpireRunFrequency ( [in] long dwExpireRunFrequency ); [propget, helpstring("")] HRESULT ShutdownLatency ( [out, retval] long * pdwShutdownLatency ); [propput] HRESULT ShutdownLatency ( [in] long dwShutdownLatency ); [propget, helpstring("")] HRESULT EnableLogging ( [out, retval] BOOL * pfEnableLogging ); [propput] HRESULT EnableLogging ( [in] BOOL fEnableLogging ); // Service-specific properties: [propget, helpstring("")] HRESULT GroupHelpFile ( [out, retval] BSTR * pstrGroupHelpFile ); [propput] HRESULT GroupHelpFile ( [in] BSTR strGroupHelpFile ); [propget, helpstring("")] HRESULT GroupListFile ( [out, retval] BSTR * pstrGroupListFile ); [propput] HRESULT GroupListFile ( [in] BSTR strGroupListFile ); [propget, helpstring("")] HRESULT GroupVarListFile( [out, retval] BSTR *pstrGroupVarListFile ); [propput] HRESULT GroupVarListFile( [in] BSTR strGroupVarListFile ); [propget, helpstring("")] HRESULT ArticleTableFile ( [out, retval] BSTR * pstrArticleTableFile ); [propput] HRESULT ArticleTableFile ( [in] BSTR strArticleTableFile ); [propget, helpstring("")] HRESULT HistoryTableFile ( [out, retval] BSTR * pstrHistoryTableFile ); [propput] HRESULT HistoryTableFile ( [in] BSTR strHistoryTableFile ); [propget, helpstring("")] HRESULT ModeratorFile ( [out, retval] BSTR * pstrModeratorFile ); [propput] HRESULT ModeratorFile ( [in] BSTR strModeratorFile ); [propget, helpstring("")] HRESULT XOverTableFile ( [out, retval] BSTR * pstrXOverTableFile ); [propput] HRESULT XOverTableFile ( [in] BSTR strXOverTableFile ); [propget, helpstring("Client post size before dropped connection")] HRESULT ClientPostHardLimit ( [out, retval] long * pdwClientPostHardLimit ); [propput] HRESULT ClientPostHardLimit ( [in] long dwClientPostHardLimit ); [propget, helpstring("Client post size before rejected post")] HRESULT ClientPostSoftLimit ( [out, retval] long * pdwClientPostSoftLimit ); [propput] HRESULT ClientPostSoftLimit ( [in] long dwClientPostSoftLimit ); [propget, helpstring("Feed post size before dropped connection")] HRESULT FeedPostHardLimit ( [out, retval] long * pdwFeedPostHardLimit ); [propput] HRESULT FeedPostHardLimit ( [in] long dwFeedPostHardLimit ); [propget, helpstring("Feed post size before rejected post")] HRESULT FeedPostSoftLimit ( [out, retval] long * pdwFeedPostSoftLimit ); [propput] HRESULT FeedPostSoftLimit ( [in] long dwFeedPostSoftLimit ); [propget, helpstring("UUCP Name")] HRESULT UucpName( [out, retval] BSTR * pstrUucpName ); [propput] HRESULT UucpName( [in] BSTR strUucpName ); [propget, helpstring("")] HRESULT Organization( [out, retval] BSTR * pstrOrganization ); [propput] HRESULT Organization( [in] BSTR strOrganization ); [propget, helpstring("")] HRESULT Comment ( [out, retval] BSTR * pstrComment ); [propput] HRESULT Comment ( [in] BSTR strComment ); [propget, helpstring("")] HRESULT Bindings ( [out, retval] INntpServerBindings ** ppBindings ); [propget, helpstring("")] HRESULT BindingsDispatch ( [out, retval] IDispatch ** ppBindings ); [propget, helpstring("")] HRESULT SecurePort ( [out, retval] long * pdwSecurePort ); [propput] HRESULT SecurePort ( [in] long dwSecurePort ); [propget, helpstring("")] HRESULT MaxConnections ( [out, retval] long * pdwMaxConnections ); [propput] HRESULT MaxConnections ( [in] long dwMaxConnections ); [propget, helpstring("")] HRESULT ConnectionTimeout ( [out, retval] long * pdwConnectionTimeout ); [propput] HRESULT ConnectionTimeout ( [in] long dwConnectionTimeout ); [propget, helpstring("")] HRESULT AnonymousUserName ( [out, retval] BSTR * pstrAnonymousUserName ); [propput] HRESULT AnonymousUserName ( [in] BSTR strAnonymousUserName ); [propget, helpstring("")] HRESULT AnonymousUserPass ( [out, retval] BSTR * pstrAnonymousUserPass ); [propput] HRESULT AnonymousUserPass ( [in] BSTR strAnonymousUserPass ); [propget, helpstring("")] HRESULT AutoSyncPassword ( [out, retval] BOOL * pfAutoSyncPassword ); [propput] HRESULT AutoSyncPassword ( [in] BOOL fAutoSyncPassword ); [propget, helpstring("")] HRESULT PickupDirectory ( [out, retval] BSTR * pstrPickupDirectory ); [propput] HRESULT PickupDirectory ( [in] BSTR strPickupDirectory ); [propget, helpstring("")] HRESULT FailedPickupDirectory ( [out, retval] BSTR * pstrFailedPickupDirectory ); [propput] HRESULT FailedPickupDirectory ( [in] BSTR strFailedPickupDirectory ); [propget, helpstring("")] HRESULT AutoStart ( [out, retval] BOOL * pfAutoStart ); [propput] HRESULT AutoStart ( [in] BOOL fAutoStart ); [propget, helpstring("")] HRESULT AuthAnonymous ( [out, retval] BOOL * pfAuthAnonymous ); [propput] HRESULT AuthAnonymous ( [in] BOOL fAuthAnonymous ); [propget, helpstring("")] HRESULT AuthBasic ( [out, retval] BOOL * pfAuthBasic ); [propput] HRESULT AuthBasic ( [in] BOOL fAuthBasic ); [propget, helpstring("")] HRESULT AuthMCISBasic ( [out, retval] BOOL * pfAuthMCISBasic ); [propput] HRESULT AuthMCISBasic ( [in] BOOL fAuthMCISBasic ); [propget, helpstring("")] HRESULT AuthNT ( [out, retval] BOOL * pfAuthNT ); [propput] HRESULT AuthNT ( [in] BOOL fAuthNT ); [propget, helpstring("")] HRESULT SSLNegotiateCert ( [out, retval] BOOL * pfSSLNegotiateCert ); [propput] HRESULT SSLNegotiateCert ( [in] BOOL fSSLNegotiateCert ); [propget, helpstring("")] HRESULT SSLRequireCert ( [out, retval] BOOL * pfSSLRequireCert ); [propput] HRESULT SSLRequireCert ( [in] BOOL fSSLRequireCert ); [propget, helpstring("")] HRESULT SSLMapCert ( [out, retval] BOOL * pfSSLMapCert ); [propput] HRESULT SSLMapCert ( [in] BOOL fSSLMapCert ); /* [propget, helpstring("")] HRESULT AuthenticationProviders ( [out, retval] SAFEARRAY(BSTR) * psastrProviders ); [propput] HRESULT AuthenticationProviders ( [in] SAFEARRAY(BSTR) psastrProviders ); [propget, helpstring("")] HRESULT AuthenticationProvidersVariant ( [out, retval] SAFEARRAY(VARIANT) * psastrProviders ); [propput] HRESULT AuthenticationProvidersVariant ( [in] SAFEARRAY(VARIANT) psastrProviders ); */ [propget, helpstring("")] HRESULT Win32ErrorCode ( [out, retval] long * plWin32ErrorCode ); /* [propget, helpstring("")] HRESULT DisplayName ( [out, retval] BSTR * pstrDisplayName ); [propput] HRESULT DisplayName ( [in] BSTR strDisplayName ); [propget, helpstring("")] HRESULT ErrorControl ( [out, retval] BOOL * pfErrorControl ); [propput] HRESULT ErrorControl ( [in] BOOL fErrorControl ); [propget, helpstring("")] HRESULT CleanBoot ( [out, retval] BOOL * pfCleanBoot ); [propput] HRESULT CleanBoot ( [in] BOOL fCleanBoot ); [propget, helpstring("Encryption capabilities mask")] HRESULT EncryptionCapabilitiesMask ( [out, retval] long * pdwEncryptionCapabilitiesMask ); [propput] HRESULT EncryptionCapabilitiesMask ( [in] long dwEncryptionCapabilitiesMask ); */ // // Service Status Properties: // [propget, helpstring("")] HRESULT State ( [out, retval] NNTP_SERVER_STATE * pState ); [propget, helpstring("")] HRESULT Administrators ( [out, retval] SAFEARRAY(BSTR) * psastrAdmins ); [propput] HRESULT Administrators ( [in] SAFEARRAY(BSTR) psastrAdmins ); [propget, helpstring("")] HRESULT AdministratorsVariant ( [out, retval] SAFEARRAY(VARIANT) * psastrAdmins ); [propput] HRESULT AdministratorsVariant ( [in] SAFEARRAY(VARIANT) psastrAdmins ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring("Get service properties")] HRESULT Get ( ); [helpstring("Set service properties")] HRESULT Set ( [in, defaultvalue(FALSE)] BOOL fFailIfChanged ); [helpstring("")] HRESULT Start ( ); [helpstring("")] HRESULT Pause ( ); [helpstring("")] HRESULT Continue ( ); [helpstring("")] HRESULT Stop ( ); [propget, helpstring("")] HRESULT ClusterEnabled ( [out, retval] BOOL * bfClusterEnabled ); [propput] HRESULT ClusterEnabled ( [in] BOOL fClusterEnabled ); }; [ object, uuid(cdde8051-ae09-11d0-8974-00aa00a74bf2), dual, helpstring("INntpOneWayFeed Interface"), pointer_default(unique) ] interface INntpOneWayFeed : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// [propget, helpstring("")] HRESULT RemoteServer ( [out, retval] BSTR * pstrRemoteServer ); [propget, helpstring("Unique Feed ID")] HRESULT FeedId ( [out, retval] long * pdwFeedId ); [propget, helpstring("")] HRESULT FeedAction ( [out, retval] NNTP_FEED_ACTION * pfeedaction ); [propput] HRESULT FeedAction ( [in] NNTP_FEED_ACTION feedaction ); [propget, helpstring("")] HRESULT UucpName ( [out, retval] BSTR * pstrUucpName ); [propput] HRESULT UucpName ( [in] BSTR strUucpName ); [propget, helpstring("Pull News From Date")] HRESULT PullNewsDate ( [out, retval] DATE * pdatePullNews ); [propput] HRESULT PullNewsDate ( [in] DATE datePullNews ); [propget, helpstring("Time between feeds")] HRESULT FeedInterval ( [out, retval] long * pdwFeedInterval ); [propput] HRESULT FeedInterval ( [in] long dwFeedInterval ); [propget, helpstring("Automatically create fed newsgroups?")] HRESULT AutoCreate ( [out, retval] BOOL * pfAutoCreate ); [propput] HRESULT AutoCreate ( [in] BOOL fAutoCreate ); [propget, helpstring("Is this feed enabled?")] HRESULT Enabled ( [out, retval] BOOL * pfEnabled ); [propput] HRESULT Enabled ( [in] BOOL fEnabled ); [propget, helpstring("Number of failed connections before disabling feed")] HRESULT MaxConnectionAttempts ( [out, retval] long * pdwMaxCnxAttempts ); [propput] HRESULT MaxConnectionAttempts ( [in] long dwMaxCnxAttempts); // Concurrent sessions missing for now... /* [propget, helpstring("")] HRESULT SecurityType ( [out, retval] long * pdwSecurityType ); [propput] HRESULT SecurityType ( [in] long dwSecurityType ); */ [propget, helpstring("")] HRESULT AuthenticationType ( [out, retval] long * plAuthenticationType ); [propput] HRESULT AuthenticationType ( [in] long lAuthenticationType ); [propget, helpstring("")] HRESULT AccountName ( [out, retval] BSTR * pstrAccount ); [propput] HRESULT AccountName ( [in] BSTR strAccount ); [propget, helpstring("")] HRESULT Password ( [out, retval] BSTR * pstrPassword ); [propput] HRESULT Password ( [in] BSTR strPassword ); [propget, helpstring("")] HRESULT AllowControlMessages ( [out, retval] BOOL * pfAllowCtrlMsgs ); [propput] HRESULT AllowControlMessages ( [in] BOOL fAllowCtrlMsgs ); [propget, helpstring("")] HRESULT OutgoingPort ( [out, retval] long * plOutgoingPort ); [propput] HRESULT OutgoingPort ( [in] long lOutgoingPort ); [propget, helpstring("")] HRESULT Newsgroups ( [out, retval] SAFEARRAY (BSTR) * psastrNewsgroups ); [propput] HRESULT Newsgroups ( [in] SAFEARRAY (BSTR) psastrNewsgroups ); [propget, helpstring("")] HRESULT NewsgroupsVariant ( [out, retval] SAFEARRAY (VARIANT) * psastrNewsgroups ); [propput] HRESULT NewsgroupsVariant ( [in] SAFEARRAY (VARIANT) psastrNewsgroups ); [propget, helpstring("")] HRESULT Distributions ( [out, retval] SAFEARRAY (BSTR) * psastrDistributions ); [propput] HRESULT Distributions ( [in] SAFEARRAY (BSTR) sastrDistributions ); /* [propget, helpstring("")] HRESULT StartTime ( [out, retval] DATE * pdateStartTime ); [propput] HRESULT StartTime ( [in] DATE dateStartTime); */ [propget, helpstring("")] HRESULT TempDirectory ( [out, retval] BSTR * pstrTempDirectory ); [propput] HRESULT TempDirectory ( [in] BSTR strTempDirectory ); [helpstring("Set properties to their default values")] HRESULT Default ( ); }; [ object, uuid(cdde8050-ae09-11d0-8974-00aa00a74bf2), dual, helpstring("INntpFeed Interface"), pointer_default(unique) ] interface INntpFeed : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// [propget, helpstring("Destination Server")] HRESULT RemoteServer ( [out, retval] BSTR * pstrRemoteServer ); [propput] HRESULT RemoteServer ( [in] BSTR strRemoteServer ); [propget, helpstring("")] HRESULT FeedType ( [out, retval] NNTP_FEED_SERVER_TYPE * pfeedtype ); [propput] HRESULT FeedType ( [in] NNTP_FEED_SERVER_TYPE feedtype ); [propget, helpstring("")] HRESULT HasInbound ( [out, retval] BOOL * pfHasInbound ); [propget, helpstring("")] HRESULT HasOutbound ( [out, retval] BOOL * pfHasOutbound ); [propget, helpstring("")] HRESULT InboundFeed ( [out, retval] INntpOneWayFeed ** ppFeed ); [propput] HRESULT InboundFeed ( [in] INntpOneWayFeed * pFeed ); [propget, helpstring("")] HRESULT InboundFeedDispatch ( [out, retval] IDispatch ** ppFeed ); [propput, helpstring("")] HRESULT InboundFeedDispatch ( [in] IDispatch * pFeed ); [propget, helpstring("")] HRESULT OutboundFeed ( [out, retval] INntpOneWayFeed ** ppFeed ); [propput] HRESULT OutboundFeed ( [in] INntpOneWayFeed * pFeed ); [propget, helpstring("")] HRESULT OutboundFeedDispatch ( [out, retval] IDispatch ** ppFeed ); [propput, helpstring("")] HRESULT OutboundFeedDispatch ( [in] IDispatch * pFeed ); }; [ object, uuid(3241F06C-6D68-11D0-8950-00AA00A74BF2), dual, helpstring("INntpAdminFeeds Interface"), pointer_default(unique) ] interface INntpAdminFeeds : IADs { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Which service to configure: [propget, helpstring("Computer Name to Configure"), id(DISPID_IADs_UPPER_BOUND+1)] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+2)] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+3)] HRESULT IADsPointer ( [out, retval] IADs** ppADs ); [propput] HRESULT IADsPointer ( [in] IADs* pADs ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+4)] HRESULT KeyType ( [out, retval] BSTR * pstrKeyType ); [propput] HRESULT KeyType ( [in] BSTR strKeyType ); // Enumeration properties: [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+5)] HRESULT Count ( [out, retval] long * pdwCount ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring(""), id(DISPID_IADs_UPPER_BOUND+6)] HRESULT Enumerate ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+7)] HRESULT Item ( [in] long dwIndex, [out, retval] INntpFeed ** ppFeed ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+8)] HRESULT ItemDispatch ( [in] long dwIndex, [out, retval] IDispatch ** ppFeed ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+9)] HRESULT FindID ( [in] long dwID, [out, retval] long * pdwIndex ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+10)] HRESULT Set ( [in] long lIndex, [in] INntpFeed * pFeed ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+11)] HRESULT Add ( [in] INntpFeed * pFeed ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+12)] HRESULT AddDispatch ( [in] IDispatch * pFeed ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+13)] HRESULT Remove ( [in] long lIndex ); }; [ object, uuid(772bbad0-7a22-11d0-895d-00aa00a74bf2), dual, helpstring("INntpAdminExpiration Interface"), pointer_default(unique) ] interface INntpAdminExpiration : IADs { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Which service to configure: [propget, helpstring("Computer Name to Configure"), id(DISPID_IADs_UPPER_BOUND+1)] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+2)] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+3)] HRESULT IADsPointer ( [out, retval] IADs** ppADs ); [propput] HRESULT IADsPointer ( [in] IADs* pADs ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+4)] HRESULT KeyType ( [out, retval] BSTR * pstrKeyType ); [propput] HRESULT KeyType ( [in] BSTR strKeyType ); // Enumeration properties: [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+5)] HRESULT Count ( [out, retval] long * pdwCount ); // The current policy's properties: [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+6)] HRESULT ExpireId ( [out, retval] long * pdwId ); [propput] HRESULT ExpireId ( [in] long dwId ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+7)] HRESULT PolicyName ( [out, retval] BSTR * pstrPolicyName ); [propput] HRESULT PolicyName ( [in] BSTR strPolicyName ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+8)] HRESULT ExpireTime ( [out, retval] long * pdwExpireTime ); [propput] HRESULT ExpireTime ( [in] long dwExpireTime ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+9)] HRESULT ExpireSize ( [out, retval] long * pdwExpireSize ); [propput] HRESULT ExpireSize ( [in] long dwExpireSize ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+10)] HRESULT Newsgroups ( [out, retval] SAFEARRAY (BSTR) * psastrNewsgroups ); [propput] HRESULT Newsgroups ( [in] SAFEARRAY (BSTR) psastrNewsgroups ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+11)] HRESULT NewsgroupsVariant ( [out, retval] SAFEARRAY (VARIANT) * psastrNewsgroups ); [propput] HRESULT NewsgroupsVariant ( [in] SAFEARRAY (VARIANT) psastrNewsgroups ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring("Set properties to their default values"), id(DISPID_IADs_UPPER_BOUND+12)] HRESULT Default ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+13)] HRESULT Enumerate ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+14)] HRESULT GetNth ( [in] long dwIndex ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+15)] HRESULT FindID ( [in] long dwID, [out, retval] long * pdwIndex ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+16)] HRESULT Set ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+17)] HRESULT Add ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+18)] HRESULT Remove ( [in] long dwID ); } [ object, uuid(3241F071-6D68-11D0-8950-00AA00A74BF2), dual, helpstring("INntpAdminGroups Interface"), pointer_default(unique) ] interface INntpAdminGroups : IADs { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Which service to configure: [propget, helpstring("Computer Name to Configure"), id(DISPID_IADs_UPPER_BOUND+1)] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+2)] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+3)] HRESULT IADsPointer ( [out, retval] IADs** ppADs ); [propput] HRESULT IADsPointer ( [in] IADs* pADs ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+4)] HRESULT KeyType ( [out, retval] BSTR * pstrKeyType ); [propput] HRESULT KeyType ( [in] BSTR strKeyType ); // Enumeration properties: [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+5)] HRESULT Count ( [out, retval] long * pdwCount ); // The current group properties: [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+6)] HRESULT Newsgroup ( [out, retval] BSTR * pstrNewsgroup ); [propput] HRESULT Newsgroup ( [in] BSTR strNewsgroup ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+7)] HRESULT Description ( [out, retval] BSTR * pstrDescription ); [propput] HRESULT Description ( [in] BSTR strDescription ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+8)] HRESULT PrettyName ( [out, retval] BSTR * pstrPrettyName ); [propput] HRESULT PrettyName ( [in] BSTR strPrettyName ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+9)] HRESULT IsModerated ( [out, retval] BOOL * pfIsModerated ); [propput] HRESULT IsModerated ( [in] BOOL fIsModerated ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+10)] HRESULT Moderator ( [out, retval] BSTR * pstrModerator ); [propput] HRESULT Moderator ( [in] BSTR strModerator ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+11)] HRESULT ReadOnly ( [out, retval] BOOL * pfReadOnly ); [propput] HRESULT ReadOnly ( [in] BOOL fReadOnly ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+12)] HRESULT CreationTime ( [out, retval] DATE * pdateCreate ); [propput] HRESULT CreationTime ( [in] DATE dateCreate ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring(""), id(DISPID_IADs_UPPER_BOUND+13)] HRESULT Default ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+14)] HRESULT Add ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+15)] HRESULT Remove ( [in] BSTR strNewsgroup ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+16)] HRESULT Get ( [in] BSTR strNewsgroup ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+17)] HRESULT Set ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+18)] HRESULT MatchingGroup ( [in] long index, [out, retval] BSTR * pstrGroup ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+19)] HRESULT Find( [in] BSTR strWildmat, [in] long cMaxResults ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+20)] HRESULT CancelMessage( [in] BSTR strMessageID ); }; [ object, uuid(3241F076-6D68-11D0-8950-00AA00A74BF2), dual, helpstring("INntpAdminSessions Interface"), pointer_default(unique) ] interface INntpAdminSessions : IADs { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Which service to configure: [propget, helpstring("Computer Name to Configure"), id(DISPID_IADs_UPPER_BOUND+1)] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+2)] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+3)] HRESULT IADsPointer ( [out, retval] IADs** ppADs ); [propput] HRESULT IADsPointer ( [in] IADs* pADs ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+4)] HRESULT KeyType ( [out, retval] BSTR * pstrKeyType ); [propput] HRESULT KeyType ( [in] BSTR strKeyType ); // Enumeration Properties: [propget, helpstring("Number of current sessions"), id(DISPID_IADs_UPPER_BOUND+5)] HRESULT Count ( [out, retval] long * pdwCount ); // The Session Cursor Properties: [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+6)] HRESULT Username ( [out, retval] BSTR * pstrUsername ); [propput] HRESULT Username ( [in] BSTR strUsername ); [propget, helpstring("IP Address String"), id(DISPID_IADs_UPPER_BOUND+7)] HRESULT IpAddress ( [out, retval] BSTR * pstrIpAddress ); [propput] HRESULT IpAddress ( [in] BSTR strIpAddress ); [propget, helpstring("Integer IP Address Value"), id(DISPID_IADs_UPPER_BOUND+8)] HRESULT IntegerIpAddress ( [out, retval] long * pdwIpAddress ); [propput] HRESULT IntegerIpAddress ( [in] long dwIpAddress ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+9)] HRESULT Port ( [out, retval] long * pdwPort ); /* [propget, helpstring("")] HRESULT AuthenticationType ( [out, retval] long * pdwAuthenticationType ); */ [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+10)] HRESULT IsAnonymous ( [out, retval] BOOL * pfAnonymous ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+11)] HRESULT StartTime ( [out, retval] DATE * pdateStart ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring("Retrieves a list of current sessions"), id(DISPID_IADs_UPPER_BOUND+12)] HRESULT Enumerate ( ); [helpstring("Sets the cursor at the given session. Call Enumerate before calling GetNth"), id(DISPID_IADs_UPPER_BOUND+13)] HRESULT GetNth ( [in] long dwIndex ); [helpstring("Terminates the given session. Set Username and/or IpAddress before calling."), id(DISPID_IADs_UPPER_BOUND+14)] HRESULT Terminate ( ); [helpstring("Terminates all sessions"), id(DISPID_IADs_UPPER_BOUND+15)] HRESULT TerminateAll ( ); }; [ object, uuid(dee3b230-a3c2-11d0-896e-00aa00a74bf2), dual, helpstring("INntpAdminRebuild Interface"), pointer_default(unique) ] interface INntpAdminRebuild : IADs { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// // Which service to configure: [propget, helpstring("Computer Name to Configure"), id(DISPID_IADs_UPPER_BOUND+1)] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+2)] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+3)] HRESULT IADsPointer ( [out, retval] IADs** ppADs ); [propput] HRESULT IADsPointer ( [in] IADs* pADs ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+4)] HRESULT KeyType ( [out, retval] BSTR * pstrKeyType ); [propput] HRESULT KeyType ( [in] BSTR strKeyType ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+5)] HRESULT Verbose ( [out, retval] BOOL * pfVerbose ); [propput] HRESULT Verbose ( [in] BOOL fVerbose ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+6)] HRESULT CleanRebuild ( [out, retval] BOOL * pfCleanRebuild ); [propput] HRESULT CleanRebuild ( [in] BOOL fCleanRebuild ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+7)] HRESULT DontDeleteHistory ( [out, retval] BOOL * pfDontDeleteHistory ); [propput] HRESULT DontDeleteHistory ( [in] BOOL fDontDeleteHistory ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+8)] HRESULT ReuseIndexFiles ( [out, retval] BOOL * pfReuseIndexFiles ); [propput] HRESULT ReuseIndexFiles ( [in] BOOL fReuseIndexFiles ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+9)] HRESULT OmitNonLeafDirs ( [out, retval] BOOL * pfOmitNonLeafDirs ); [propput] HRESULT OmitNonLeafDirs ( [in] BOOL fOmitNonLeafDirs ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+10)] HRESULT GroupFile ( [out, retval] BSTR * pstrGroupFile ); [propput] HRESULT GroupFile ( [in] BSTR strGroupFile ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+11)] HRESULT ReportFile ( [out, retval] BSTR * pstrReportFile ); [propput] HRESULT ReportFile ( [in] BSTR strReportFile ); [propget, helpstring(""), id(DISPID_IADs_UPPER_BOUND+12)] HRESULT NumThreads ( [out, retval] long * plNumThreads ); [propput] HRESULT NumThreads ( [in] long lNumThreads ); ////////////////////////////////////////////////////////////////////// // Methods: ////////////////////////////////////////////////////////////////////// [helpstring(""), id(DISPID_IADs_UPPER_BOUND+13)] HRESULT Default ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+14)] HRESULT StartRebuild ( ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+15)] HRESULT GetProgress ( [out, retval] long * pdwProgress ); [helpstring(""), id(DISPID_IADs_UPPER_BOUND+16)] HRESULT Cancel ( ); }; [ object, uuid(9fc9efd0-a535-11d0-896f-00aa00a74bf2), dual, helpstring("INntpServerBinding Interface"), pointer_default(unique) ] interface INntpServerBinding : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// [propget, helpstring("")] HRESULT IpAddress ( [out, retval] BSTR * pstrIpAddress ); [propput] HRESULT IpAddress ( [in] BSTR strIpAddress ); [propget, helpstring("")] HRESULT TcpPort ( [out, retval] long * pdwTcpPort ); [propput] HRESULT TcpPort ( [in] long dwTcpPort ); [propget, helpstring("")] HRESULT SslPort ( [out, retval] long * plSslPort ); [propput] HRESULT SslPort ( [in] long lSslPort ); }; [ object, uuid(9fc9efd1-a535-11d0-896f-00aa00a74bf2), dual, helpstring("INntpServerBindings Interface"), pointer_default(unique) ] interface INntpServerBindings : IDispatch { import "oaidl.idl"; // // Standard collection methods & properties: // [propget, helpstring("")] HRESULT Count ( [out, retval] long * pdwCount ); [helpstring("")] HRESULT Item ( [in] long index, [out, retval] INntpServerBinding ** ppBinding ); [helpstring("")] HRESULT ItemDispatch ( [in] long index, [out, retval] IDispatch ** ppBinding ); [helpstring("")] HRESULT Add ( [in] BSTR strIpAddress, [in] long dwTcpPort, [in] long dwSslPort ); [helpstring("")] HRESULT ChangeBinding ( [in] long index, [in] INntpServerBinding * pBinding ); [helpstring("")] HRESULT ChangeBindingDispatch ( [in] long index, [in] IDispatch * pBinding ); [helpstring("")] HRESULT Remove ( [in] long index ); [helpstring("")] HRESULT Clear ( ); }; [ object, uuid(aa068dc0-a635-11d0-896f-00aa00a74bf2), dual, helpstring("INntpVirtualRoot Interface"), pointer_default(unique) ] interface INntpVirtualRoot : IDispatch { import "oaidl.idl"; ////////////////////////////////////////////////////////////////////// // Properties: ////////////////////////////////////////////////////////////////////// [propget, helpstring("")] HRESULT NewsgroupSubtree ( [out, retval] BSTR * pstrNewsgroupSubtree ); [propput] HRESULT NewsgroupSubtree ( [in] BSTR strNewsgroupSubtree ); [propget, helpstring("")] HRESULT Directory ( [out, retval] BSTR * pstrDirectory ); [propput] HRESULT Directory ( [in] BSTR strDirectory ); [propget, helpstring("")] HRESULT Win32Error ( [out, retval] long * plWin32Error ); [propget, helpstring("")] HRESULT AllowPosting ( [out, retval] BOOL * pfAllowPosting ); [propput] HRESULT AllowPosting ( [in] BOOL fAllowPosting ); [propget, helpstring("")] HRESULT RestrictGroupVisibility ( [out, retval] BOOL * pfRestrictGroupVisibility ); [propput] HRESULT RestrictGroupVisibility ( [in] BOOL fRestrictGroupVisibility ); [propget, helpstring("")] HRESULT IndexContent ( [out, retval] BOOL * pfIndexContent ); [propput] HRESULT IndexContent ( [in] BOOL fIndexContent ); [propget, helpstring("")] HRESULT LogAccess ( [out, retval] BOOL * pfLogAccess ); [propput] HRESULT LogAccess ( [in] BOOL fLogAccess ); [propget, helpstring("")] HRESULT RequireSsl ( [out, retval] BOOL * pfRequireSsl ); [propput] HRESULT RequireSsl ( [in] BOOL fRequireSsl ); [propget, helpstring("")] HRESULT Require128BitSsl ( [out, retval] BOOL * pfRequire128BitSsl ); [propput] HRESULT Require128BitSsl ( [in] BOOL fRequire128BitSsl ); [propget, helpstring("")] HRESULT UNCUsername ( [out, retval] BSTR * pstrUNCUsername ); [propput] HRESULT UNCUsername ( [in] BSTR strUNCUsername ); [propget, helpstring("")] HRESULT UNCPassword ( [out, retval] BSTR * pstrUNCPassword ); [propput] HRESULT UNCPassword ( [in] BSTR strUNCPassword ); [propget, helpstring("")] HRESULT DriverProgId( [out, retval] BSTR * pstrDriverProgId ); [propput] HRESULT DriverProgId( [in] BSTR strDriverPropId ); [propget, helpstring("")] HRESULT GroupPropFile( [out, retval] BSTR *pstrGroupPropFile ); [propput] HRESULT GroupPropFile( [in] BSTR strGroupPropFile ); [propget, helpstring("")] HRESULT UseAccount( [out, retval] DWORD *pfIsUNC ); [propput] HRESULT UseAccount( [in] DWORD UseAccount ); [propget, helpstring("")] HRESULT OwnExpire( [out, retval] BOOL *pfOwnExpire ); [propput] HRESULT OwnExpire( [in] BOOL fOwnExpire ); [propget, helpstring("")] HRESULT OwnModerator( [out, retval] BOOL *pfOwnModerator ); [propput] HRESULT OwnModerator( [in] BOOL fOwnModerator ); [propget, helpstring("")] HRESULT MdbGuid( [out, retval] BSTR *pstrMdbGuid ); [propput] HRESULT MdbGuid( [in] BSTR strMdbGuid ); }; [ object, uuid(aa068dc1-a635-11d0-896f-00aa00a74bf2), dual, helpstring("INntpVirtualRoots Interface"), pointer_default(unique) ] interface INntpVirtualRoots : IDispatch { import "oaidl.idl"; // Which service to configure: [propget, helpstring("Computer Name to Configure")] HRESULT Server ( [out, retval] BSTR * pstrServer ); [propput] HRESULT Server ( [in] BSTR strServer ); [propget, helpstring("")] HRESULT ServiceInstance ( [out, retval] long * pdwServiceInstance ); [propput] HRESULT ServiceInstance ( [in] long dwServiceInstance ); // // Standard collection methods & properties: // [propget, helpstring("")] HRESULT Count ( [out, retval] long * pdwCount ); [helpstring("")] HRESULT Enumerate ( ); [helpstring("")] HRESULT Item ( [in] long index, [out, retval] INntpVirtualRoot ** ppVRoot ); [helpstring("")] HRESULT ItemDispatch ( [in] long index, [out, retval] IDispatch ** ppVRoot ); [helpstring("")] HRESULT Add ( INntpVirtualRoot * pVRoot ); [helpstring("")] HRESULT AddDispatch ( IDispatch * pVRoot ); [helpstring("")] HRESULT Set ( [in] long index, [in] INntpVirtualRoot * pVRoot ); [helpstring("")] HRESULT SetDispatch ( [in] long index, [in] IDispatch * pVRoot ); [helpstring("")] HRESULT Remove ( [in] long index ); [helpstring("")] HRESULT Find ( [in] BSTR strNewsgroupSubtree, [out, retval] long * pIndex ); }; [ object, uuid(cbf09fa0-b9ac-11d0-8977-00aa00a74bf2), dual, helpstring("ITcpAccess Interface"), pointer_default(unique) ] interface ITcpAccess : IDispatch { import "oaidl.idl"; [propget, helpstring("")] HRESULT GrantedList ( [out, retval] ITcpAccessExceptions ** ppGrantedList ); [propget, helpstring("")] HRESULT DeniedList ( [out, retval] ITcpAccessExceptions ** ppDeniedList ); }; [ object, uuid(cbf09fa1-b9ac-11d0-8977-00aa00a74bf2), dual, helpstring("ITcpAccessExceptions Interface"), pointer_default(unique) ] interface ITcpAccessExceptions : IDispatch { import "oaidl.idl"; [propget, helpstring("")] HRESULT Count ( [out, retval] long * pcCount ); [helpstring("")] HRESULT AddDnsName ( [in] BSTR strDnsName ); [helpstring("")] HRESULT AddIpAddress ( [in] long lIpAddress, [in] long lIpMask ); [helpstring("")] HRESULT Item ( [in] long index, [out, retval] ITcpAccessException ** ppItem ); [helpstring("")] HRESULT Remove ( [in] long index ); [helpstring("")] HRESULT Clear ( ); [helpstring("")] HRESULT FindDnsIndex ( [in] BSTR strDnsName, [out, retval] long * pIndex ); [helpstring("")] HRESULT FindIpIndex ( [in] long lIpAddress, [in] long lIpMask, [out, retval] long * pIndex ); }; [ object, uuid(326e38c0-c32a-11d0-8989-00aa00a74bf2), dual, helpstring("ITcpAccessException Interface"), pointer_default(unique) ] interface ITcpAccessException : IDispatch { import "oaidl.idl"; [propget, helpstring("")] HRESULT IsDnsName ( [out, retval] BOOL * pfIsDnsName ); [propget, helpstring("")] HRESULT IsIpAddress ( [out, retval] BOOL * pfIsIpAddress ); [propget, helpstring("")] HRESULT DnsName ( [out, retval] BSTR * pstrDnsName ); [propput] HRESULT DnsName ( [in] BSTR strDnsName ); [propget, helpstring("")] HRESULT IpAddress ( [out, retval] long * plIpAddress ); [propput] HRESULT IpAddress ( [in] long lIpAddress ); [propget, helpstring("")] HRESULT IpMask ( [out, retval] long * plIpMask ); [propput] HRESULT IpMask ( [in] long lIpMask ); }; ////////////////////////////////////////////////////////////////////// // // Class Definitions: // ////////////////////////////////////////////////////////////////////// [ uuid(3241F066-6D68-11D0-8950-00AA00A74BF2), helpstring("NntpAdmin Class") ] coclass CNntpAdmin { [default] interface INntpAdmin; }; [ uuid(3241F07F-6D68-11D0-8950-00AA00A74BF2), helpstring("NntpAdminServer Class") ] coclass CNntpAdminService { [default] interface INntpService; }; [ uuid(3241F06B-6D68-11D0-8950-00AA00A74BF2), helpstring("NntpAdminService Class") ] coclass CNntpVirtualServer { [default] interface INntpVirtualServer; }; [ uuid(3241F070-6D68-11D0-8950-00AA00A74BF2), helpstring("NntpAdminFeeds Class") ] coclass CNntpAdminFeeds { [default] interface INntpAdminFeeds; // interface IADs; }; [ uuid(5bddc640-ae09-11d0-8974-00aa00a74bf2), helpstring("NntpFeed Class") ] coclass CNntpFeed { [default] interface INntpFeed; }; [ uuid(5bddc641-ae09-11d0-8974-00aa00a74bf2), helpstring("NntpOneWayFeed Class") ] coclass CNntpOneWayFeed { [default] interface INntpOneWayFeed; }; [ uuid(772bbad1-7a22-11d0-895d-00aa00a74bf2), helpstring("NntpAdminExpiration Class") ] coclass CNntpAdminExpiration { [default] interface INntpAdminExpiration; // interface IADs; }; [ uuid(3241F075-6D68-11D0-8950-00AA00A74BF2), helpstring("NntpAdminGroups Class") ] coclass CNntpAdminGroups { [default] interface INntpAdminGroups; interface IADs; }; [ uuid(3241F07A-6D68-11D0-8950-00AA00A74BF2), helpstring("NntpAdminSessions Class") ] coclass CNntpAdminSessions { [default] interface INntpAdminSessions; // interface IADs; }; [ uuid(dee3b231-a3c2-11d0-896e-00aa00a74bf2), helpstring("NntpAdminRebuild Class") ] coclass CNntpAdminRebuild { [default] interface INntpAdminRebuild; // interface IADs; }; [ uuid(28e6a820-a6c4-11d0-896f-00aa00a74bf2), helpstring("NntpVirtualRoot Class") ] coclass CNntpVirtualRoot { [default] interface INntpVirtualRoot; } /* [ uuid(cbf09fa2-b9ac-11d0-8977-00aa00a74bf2), helpstring("TcpAccess Class") ] coclass CTcpAccess { [default] interface ITcpAccess; } [ uuid(cbf09fa3-b9ac-11d0-8977-00aa00a74bf2), helpstring("TcpAccessExceptions Class") ] coclass CTcpAccessExceptions { [default] interface ITcpAccessExceptions; } [ uuid(326e38c2-c32a-11d0-8989-00aa00a74bf2), helpstring("TcpAccessException Class") ] coclass CTcpAccessException { [default] interface ITcpAccessException; } */ }; cpp_quote("#endif _NNTPADM_IDL_INCLUDED_")