2 * Copyright 2000, International Business Machines Corporation and others.
5 * This software has been released under the terms of the IBM Public
6 * License. For details, see the LICENSE file in the top-level source
7 * directory or online at http://www.openafs.org/dl/license10.html
10 #ifndef AFSCLASS_SERVICE_H
11 #define AFSCLASS_SERVICE_H
13 #include <WINNT/afsclass.h>
17 * SERVICE CLASS ______________________________________________________________
32 SERVICESTATE_STARTING,
38 TCHAR szAuxStatus[ cchRESOURCE ];
39 TCHAR szParams[ cchRESOURCE ];
40 TCHAR szNotifier[ cchRESOURCE ];
41 SYSTEMTIME timeLastStart;
42 SYSTEMTIME timeLastStop;
43 SYSTEMTIME timeLastFail;
49 } SERVICESTATUS, *LPSERVICESTATUS;
53 #define ENCRYPTIONKEY_LEN 8
54 BYTE key[ ENCRYPTIONKEY_LEN ];
55 } ENCRYPTIONKEY, *LPENCRYPTIONKEY;
59 SYSTEMTIME timeLastModification;
61 } ENCRYPTIONKEYINFO, *LPENCRYPTIONKEYINFO;
71 void Invalidate (void);
72 BOOL RefreshStatus (BOOL fNotify = TRUE, ULONG *pStatus = NULL); // does nothing if not invalidated
76 LPIDENT GetIdentifier (void);
77 LPCELL OpenCell (ULONG *pStatus = NULL);
78 LPSERVER OpenServer (ULONG *pStatus = NULL);
79 void GetName (LPTSTR pszName);
81 BOOL GetStatus (LPSERVICESTATUS lpss, BOOL fNotify = TRUE, ULONG *pStatus = NULL);
83 PVOID GetUserParam (void);
84 void SetUserParam (PVOID pUserParam);
89 SERVICE (LPSERVER lpServerParent, LPTSTR pszName);
91 void SendDeleteNotifications (void);
99 TCHAR m_szName[ cchNAME ];
101 BOOL m_fStatusOutOfDate;
106 #endif // AFSCLASS_SERVICE_H