// NetFSServerRoster.h #ifndef NETFS_SERVER_ROSTER_H #define NETFS_SERVER_ROSTER_H #include #include class NetFSServerRoster { public: NetFSServerRoster(); ~NetFSServerRoster(); // server bool IsServerRunning(); status_t LaunchServer(); status_t TerminateServer(bool force = false, bigtime_t timeout = B_INFINITE_TIMEOUT); status_t SaveServerSettings(); // users status_t AddUser(const char* user, const char* password); status_t RemoveUser(const char* user); status_t GetUsers(BMessage* users); status_t GetUserStatistics(const char* user, BMessage* statistics); // shares status_t AddShare(const char* share, const char* path); status_t RemoveShare(const char* share); status_t GetShares(BMessage* shares); status_t GetShareUsers(const char* share, BMessage* users); status_t GetShareStatistics(const char* share, BMessage* statistics); // permissions status_t SetUserPermissions(const char* share, const char* user, uint32 permissions); status_t GetUserPermissions(const char* share, const char* user, uint32* permissions); private: status_t _InitMessenger(); status_t _SendRequest(BMessage* request, BMessage* reply = NULL); private: BMessenger fServerMessenger; }; #endif // NETFS_SERVER_ROSTER_H