diff options
author | Jamie Fraser <jamie.f@sabrienix.com> | 2010-08-21 23:53:22 +0400 |
---|---|---|
committer | Stefan Hacker <dd0t@users.sourceforge.net> | 2010-08-28 18:51:05 +0400 |
commit | 71e90290cc1c43e21388805d0db21b3d578b1e96 (patch) | |
tree | 107b7215de0ab49f4db1ff30fb22a54787b9b0d4 /src/murmur/MurmurIceWrapper.cpp | |
parent | fb9f982b59ca61c55bceaff12fb7a887c6d6cc5a (diff) |
Ice method: int getLogLen()
Diffstat (limited to 'src/murmur/MurmurIceWrapper.cpp')
-rw-r--r-- | src/murmur/MurmurIceWrapper.cpp | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/src/murmur/MurmurIceWrapper.cpp b/src/murmur/MurmurIceWrapper.cpp index 697b45eb5..1fef55d79 100644 --- a/src/murmur/MurmurIceWrapper.cpp +++ b/src/murmur/MurmurIceWrapper.cpp @@ -389,6 +389,36 @@ void ::Murmur::ServerI::getLog_async(const ::Murmur::AMD_Server_getLogPtr &cb, QCoreApplication::instance()->postEvent(mi, ie); } +void ::Murmur::ServerI::getLogLen_async(const ::Murmur::AMD_Server_getLogLenPtr &cb, const ::Ice::Current ¤t) { + // qWarning() << "getLogLen" << meta->mp.qsIceSecretRead.isNull() << meta->mp.qsIceSecretRead.isEmpty(); +#ifndef ACCESS_Server_getLogLen_ALL +#ifdef ACCESS_Server_getLogLen_READ + if (! meta->mp.qsIceSecretRead.isNull()) { + bool ok = ! meta->mp.qsIceSecretRead.isEmpty(); +#else + if (! meta->mp.qsIceSecretRead.isNull() || ! meta->mp.qsIceSecretWrite.isNull()) { + bool ok = ! meta->mp.qsIceSecretWrite.isEmpty(); +#endif + ::Ice::Context::const_iterator i = current.ctx.find("secret"); + ok = ok && (i != current.ctx.end()); + if (ok) { + const QString &secret = u8((*i).second); +#ifdef ACCESS_Server_getLogLen_READ + ok = ((secret == meta->mp.qsIceSecretRead) || (secret == meta->mp.qsIceSecretWrite)); +#else + ok = (secret == meta->mp.qsIceSecretWrite); +#endif + } + if (! ok) { + cb->ice_exception(InvalidSecretException()); + return; + } + } +#endif + ExecEvent *ie = new ExecEvent(boost::bind(&impl_Server_getLogLen, cb, QString::fromStdString(current.id.name).toInt())); + QCoreApplication::instance()->postEvent(mi, ie); +} + void ::Murmur::ServerI::getUsers_async(const ::Murmur::AMD_Server_getUsersPtr &cb, const ::Ice::Current ¤t) { // qWarning() << "getUsers" << meta->mp.qsIceSecretRead.isNull() << meta->mp.qsIceSecretRead.isEmpty(); #ifndef ACCESS_Server_getUsers_ALL @@ -1710,5 +1740,5 @@ void ::Murmur::MetaI::getSliceChecksums_async(const ::Murmur::AMD_Meta_getSliceC } void ::Murmur::MetaI::getSlice_async(const ::Murmur::AMD_Meta_getSlicePtr& cb, const Ice::Current&) { - cb->ice_response(std::string("#include <Ice/SliceChecksumDict.ice>\nmodule Murmur\n{\n[\"python:seq:tuple\"] sequence<byte> NetAddress;\nstruct User {\nint session;\nint userid;\nbool mute;\nbool deaf;\nbool suppress;\nbool prioritySpeaker;\nbool selfMute;\nbool selfDeaf;\nint channel;\nstring name;\nint onlinesecs;\nint bytespersec;\nint version;\nstring release;\nstring os;\nstring osversion;\nstring identity;\nstring context;\nstring comment;\nNetAddress address;\nbool tcponly;\nint idlesecs;\n};\nsequence<int> IntList;\nstruct Channel {\nint id;\nstring name;\nint parent;\nIntList links;\nstring description;\nbool temporary;\nint position;\n};\nstruct Group {\nstring name;\nbool inherited;\nbool inherit;\nbool inheritable;\nIntList add;\nIntList remove;\nIntList members;\n};\nconst int PermissionWrite = 0x01;\nconst int PermissionTraverse = 0x02;\nconst int PermissionEnter = 0x04;\nconst int PermissionSpeak = 0x08;\nconst int PermissionWhisper = 0x100;\nconst int PermissionMuteDeafen = 0x10;\nconst int PermissionMove = 0x20;\nconst int PermissionMakeChannel = 0x40;\nconst int PermissionMakeTempChannel = 0x400;\nconst int PermissionLinkChannel = 0x80;\nconst int PermissionTextMessage = 0x200;\nconst int PermissionKick = 0x10000;\nconst int PermissionBan = 0x20000;\nconst int PermissionRegister = 0x40000;\nconst int PermissionRegisterSelf = 0x80000;\nstruct ACL {\nbool applyHere;\nbool applySubs;\nbool inherited;\nint userid;\nstring group;\nint allow;\nint deny;\n};\nstruct Ban {\nNetAddress address;\nint bits;\nstring name;\nstring hash;\nstring reason;\nint start;\nint duration;\n};\nstruct LogEntry {\nint timestamp;\nstring txt;\n};\nclass Tree;\nsequence<Tree> TreeList;\nenum ChannelInfo { ChannelDescription, ChannelPosition };\nenum UserInfo { UserName, UserEmail, UserComment, UserHash, UserPassword, UserLastActive };\ndictionary<int, User> UserMap;\ndictionary<int, Channel> ChannelMap;\nsequence<Channel> ChannelList;\nsequence<User> UserList;\nsequence<Group> GroupList;\nsequence<ACL> ACLList;\nsequence<LogEntry> LogList;\nsequence<Ban> BanList;\nsequence<int> IdList;\nsequence<string> NameList;\ndictionary<int, string> NameMap;\ndictionary<string, int> IdMap;\nsequence<byte> Texture;\ndictionary<string, string> ConfigMap;\nsequence<string> GroupNameList;\nsequence<byte> CertificateDer;\nsequence<CertificateDer> CertificateList;\ndictionary<UserInfo, string> UserInfoMap;\nclass Tree {\nChannel c;\nTreeList children;\nUserList users;\n};\nexception MurmurException {};\nexception InvalidSessionException extends MurmurException {};\nexception InvalidChannelException extends MurmurException {};\nexception InvalidServerException extends MurmurException {};\nexception ServerBootedException extends MurmurException {};\nexception ServerFailureException extends MurmurException {};\nexception InvalidUserException extends MurmurException {};\nexception InvalidTextureException extends MurmurException {};\nexception InvalidCallbackException extends MurmurException {};\nexception InvalidSecretException extends MurmurException {};\ninterface ServerCallback {\nidempotent void userConnected(User state);\nidempotent void userDisconnected(User state);\nidempotent void userStateChanged(User state);\nidempotent void channelCreated(Channel state);\nidempotent void channelRemoved(Channel state);\nidempotent void channelStateChanged(Channel state);\n};\nconst int ContextServer = 0x01;\nconst int ContextChannel = 0x02;\nconst int ContextUser = 0x04;\ninterface ServerContextCallback {\nidempotent void contextAction(string action, User usr, int session, int channelid);\n};\ninterface ServerAuthenticator {\nidempotent int authenticate(string name, string pw, CertificateList certificates, string certhash, bool certstrong, out string newname, out GroupNameList groups);\nidempotent bool getInfo(int id, out UserInfoMap info);\nidempotent int nameToId(string name);\nidempotent string idToName(int id);\nidempotent Texture idToTexture(int id);\n};\ninterface ServerUpdatingAuthenticator extends ServerAuthenticator {\nint registerUser(UserInfoMap info);\nint unregisterUser(int id);\nidempotent NameMap getRegisteredUsers(string filter);\nidempotent int setInfo(int id, UserInfoMap info);\nidempotent int setTexture(int id, Texture tex);\n};\n[\"amd\"] interface Server {\nidempotent bool isRunning() throws InvalidSecretException;\nvoid start() throws ServerBootedException, ServerFailureException, InvalidSecretException;\nvoid stop() throws ServerBootedException, InvalidSecretException;\nvoid delete() throws ServerBootedException, InvalidSecretException;\nidempotent int id() throws InvalidSecretException;\nvoid addCallback(ServerCallback *cb) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nvoid removeCallback(ServerCallback *cb) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nvoid setAuthenticator(ServerAuthenticator *auth) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nidempotent string getConf(string key) throws InvalidSecretException;\nidempotent ConfigMap getAllConf() throws InvalidSecretException;\nidempotent void setConf(string key, string value) throws InvalidSecretException;\nidempotent void setSuperuserPassword(string pw) throws InvalidSecretException;\nidempotent LogList getLog(int first, int last) throws InvalidSecretException;\nidempotent UserMap getUsers() throws ServerBootedException, InvalidSecretException;\nidempotent ChannelMap getChannels() throws ServerBootedException, InvalidSecretException;\nidempotent CertificateList getCertificateList(int session) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent Tree getTree() throws ServerBootedException, InvalidSecretException;\nidempotent BanList getBans() throws ServerBootedException, InvalidSecretException;\nidempotent void setBans(BanList bans) throws ServerBootedException, InvalidSecretException;\nvoid kickUser(int session, string reason) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent User getState(int session) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent void setState(User state) throws ServerBootedException, InvalidSessionException, InvalidChannelException, InvalidSecretException;\nvoid sendMessage(int session, string text) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nbool hasPermission(int session, int channelid, int perm) throws ServerBootedException, InvalidSessionException, InvalidChannelException, InvalidSecretException;\nvoid addContextCallback(int session, string action, string text, ServerContextCallback *cb, int ctx) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nvoid removeContextCallback(ServerContextCallback *cb) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nidempotent Channel getChannelState(int channelid) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void setChannelState(Channel state) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nvoid removeChannel(int channelid) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nint addChannel(string name, int parent) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nvoid sendMessageChannel(int channelid, bool tree, string text) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void getACL(int channelid, out ACLList acls, out GroupList groups, out bool inherit) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void setACL(int channelid, ACLList acls, GroupList groups, bool inherit) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void addUserToGroup(int channelid, int session, string group) throws ServerBootedException, InvalidChannelException, InvalidSessionException, InvalidSecretException;\nidempotent void removeUserFromGroup(int channelid, int session, string group) throws ServerBootedException, InvalidChannelException, InvalidSessionException, InvalidSecretException;\nidempotent void redirectWhisperGroup(int session, string source, string target) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent NameMap getUserNames(IdList ids) throws ServerBootedException, InvalidSecretException;\nidempotent IdMap getUserIds(NameList names) throws ServerBootedException, InvalidSecretException;\nint registerUser(UserInfoMap info) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nvoid unregisterUser(int userid) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent void updateRegistration(int userid, UserInfoMap info) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent UserInfoMap getRegistration(int userid) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent NameMap getRegisteredUsers(string filter) throws ServerBootedException, InvalidSecretException;\nidempotent int verifyPassword(string name, string pw) throws ServerBootedException, InvalidSecretException;\nidempotent Texture getTexture(int userid) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent void setTexture(int userid, Texture tex) throws ServerBootedException, InvalidUserException, InvalidTextureException, InvalidSecretException;\nidempotent int getUptime() throws ServerBootedException, InvalidSecretException;\n};\ninterface MetaCallback {\nvoid started(Server *srv);\nvoid stopped(Server *srv);\n};\nsequence<Server *> ServerList;\n[\"amd\"] interface Meta {\nidempotent Server *getServer(int id) throws InvalidSecretException;\nServer *newServer() throws InvalidSecretException;\nidempotent ServerList getBootedServers() throws InvalidSecretException;\nidempotent ServerList getAllServers() throws InvalidSecretException;\nidempotent ConfigMap getDefaultConf() throws InvalidSecretException;\nidempotent void getVersion(out int major, out int minor, out int patch, out string text);\nvoid addCallback(MetaCallback *cb) throws InvalidCallbackException, InvalidSecretException;\nvoid removeCallback(MetaCallback *cb) throws InvalidCallbackException, InvalidSecretException;\nidempotent int getUptime();\nidempotent string getSlice();\nidempotent Ice::SliceChecksumDict getSliceChecksums();\n};\n};\n")); + cb->ice_response(std::string("#include <Ice/SliceChecksumDict.ice>\nmodule Murmur\n{\n[\"python:seq:tuple\"] sequence<byte> NetAddress;\nstruct User {\nint session;\nint userid;\nbool mute;\nbool deaf;\nbool suppress;\nbool prioritySpeaker;\nbool selfMute;\nbool selfDeaf;\nint channel;\nstring name;\nint onlinesecs;\nint bytespersec;\nint version;\nstring release;\nstring os;\nstring osversion;\nstring identity;\nstring context;\nstring comment;\nNetAddress address;\nbool tcponly;\nint idlesecs;\n};\nsequence<int> IntList;\nstruct Channel {\nint id;\nstring name;\nint parent;\nIntList links;\nstring description;\nbool temporary;\nint position;\n};\nstruct Group {\nstring name;\nbool inherited;\nbool inherit;\nbool inheritable;\nIntList add;\nIntList remove;\nIntList members;\n};\nconst int PermissionWrite = 0x01;\nconst int PermissionTraverse = 0x02;\nconst int PermissionEnter = 0x04;\nconst int PermissionSpeak = 0x08;\nconst int PermissionWhisper = 0x100;\nconst int PermissionMuteDeafen = 0x10;\nconst int PermissionMove = 0x20;\nconst int PermissionMakeChannel = 0x40;\nconst int PermissionMakeTempChannel = 0x400;\nconst int PermissionLinkChannel = 0x80;\nconst int PermissionTextMessage = 0x200;\nconst int PermissionKick = 0x10000;\nconst int PermissionBan = 0x20000;\nconst int PermissionRegister = 0x40000;\nconst int PermissionRegisterSelf = 0x80000;\nstruct ACL {\nbool applyHere;\nbool applySubs;\nbool inherited;\nint userid;\nstring group;\nint allow;\nint deny;\n};\nstruct Ban {\nNetAddress address;\nint bits;\nstring name;\nstring hash;\nstring reason;\nint start;\nint duration;\n};\nstruct LogEntry {\nint timestamp;\nstring txt;\n};\nclass Tree;\nsequence<Tree> TreeList;\nenum ChannelInfo { ChannelDescription, ChannelPosition };\nenum UserInfo { UserName, UserEmail, UserComment, UserHash, UserPassword, UserLastActive };\ndictionary<int, User> UserMap;\ndictionary<int, Channel> ChannelMap;\nsequence<Channel> ChannelList;\nsequence<User> UserList;\nsequence<Group> GroupList;\nsequence<ACL> ACLList;\nsequence<LogEntry> LogList;\nsequence<Ban> BanList;\nsequence<int> IdList;\nsequence<string> NameList;\ndictionary<int, string> NameMap;\ndictionary<string, int> IdMap;\nsequence<byte> Texture;\ndictionary<string, string> ConfigMap;\nsequence<string> GroupNameList;\nsequence<byte> CertificateDer;\nsequence<CertificateDer> CertificateList;\ndictionary<UserInfo, string> UserInfoMap;\nclass Tree {\nChannel c;\nTreeList children;\nUserList users;\n};\nexception MurmurException {};\nexception InvalidSessionException extends MurmurException {};\nexception InvalidChannelException extends MurmurException {};\nexception InvalidServerException extends MurmurException {};\nexception ServerBootedException extends MurmurException {};\nexception ServerFailureException extends MurmurException {};\nexception InvalidUserException extends MurmurException {};\nexception InvalidTextureException extends MurmurException {};\nexception InvalidCallbackException extends MurmurException {};\nexception InvalidSecretException extends MurmurException {};\ninterface ServerCallback {\nidempotent void userConnected(User state);\nidempotent void userDisconnected(User state);\nidempotent void userStateChanged(User state);\nidempotent void channelCreated(Channel state);\nidempotent void channelRemoved(Channel state);\nidempotent void channelStateChanged(Channel state);\n};\nconst int ContextServer = 0x01;\nconst int ContextChannel = 0x02;\nconst int ContextUser = 0x04;\ninterface ServerContextCallback {\nidempotent void contextAction(string action, User usr, int session, int channelid);\n};\ninterface ServerAuthenticator {\nidempotent int authenticate(string name, string pw, CertificateList certificates, string certhash, bool certstrong, out string newname, out GroupNameList groups);\nidempotent bool getInfo(int id, out UserInfoMap info);\nidempotent int nameToId(string name);\nidempotent string idToName(int id);\nidempotent Texture idToTexture(int id);\n};\ninterface ServerUpdatingAuthenticator extends ServerAuthenticator {\nint registerUser(UserInfoMap info);\nint unregisterUser(int id);\nidempotent NameMap getRegisteredUsers(string filter);\nidempotent int setInfo(int id, UserInfoMap info);\nidempotent int setTexture(int id, Texture tex);\n};\n[\"amd\"] interface Server {\nidempotent bool isRunning() throws InvalidSecretException;\nvoid start() throws ServerBootedException, ServerFailureException, InvalidSecretException;\nvoid stop() throws ServerBootedException, InvalidSecretException;\nvoid delete() throws ServerBootedException, InvalidSecretException;\nidempotent int id() throws InvalidSecretException;\nvoid addCallback(ServerCallback *cb) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nvoid removeCallback(ServerCallback *cb) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nvoid setAuthenticator(ServerAuthenticator *auth) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nidempotent string getConf(string key) throws InvalidSecretException;\nidempotent ConfigMap getAllConf() throws InvalidSecretException;\nidempotent void setConf(string key, string value) throws InvalidSecretException;\nidempotent void setSuperuserPassword(string pw) throws InvalidSecretException;\nidempotent LogList getLog(int first, int last) throws InvalidSecretException;\nidempotent int getLogLen() throws InvalidSecretException;\nidempotent UserMap getUsers() throws ServerBootedException, InvalidSecretException;\nidempotent ChannelMap getChannels() throws ServerBootedException, InvalidSecretException;\nidempotent CertificateList getCertificateList(int session) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent Tree getTree() throws ServerBootedException, InvalidSecretException;\nidempotent BanList getBans() throws ServerBootedException, InvalidSecretException;\nidempotent void setBans(BanList bans) throws ServerBootedException, InvalidSecretException;\nvoid kickUser(int session, string reason) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent User getState(int session) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent void setState(User state) throws ServerBootedException, InvalidSessionException, InvalidChannelException, InvalidSecretException;\nvoid sendMessage(int session, string text) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nbool hasPermission(int session, int channelid, int perm) throws ServerBootedException, InvalidSessionException, InvalidChannelException, InvalidSecretException;\nvoid addContextCallback(int session, string action, string text, ServerContextCallback *cb, int ctx) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nvoid removeContextCallback(ServerContextCallback *cb) throws ServerBootedException, InvalidCallbackException, InvalidSecretException;\nidempotent Channel getChannelState(int channelid) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void setChannelState(Channel state) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nvoid removeChannel(int channelid) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nint addChannel(string name, int parent) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nvoid sendMessageChannel(int channelid, bool tree, string text) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void getACL(int channelid, out ACLList acls, out GroupList groups, out bool inherit) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void setACL(int channelid, ACLList acls, GroupList groups, bool inherit) throws ServerBootedException, InvalidChannelException, InvalidSecretException;\nidempotent void addUserToGroup(int channelid, int session, string group) throws ServerBootedException, InvalidChannelException, InvalidSessionException, InvalidSecretException;\nidempotent void removeUserFromGroup(int channelid, int session, string group) throws ServerBootedException, InvalidChannelException, InvalidSessionException, InvalidSecretException;\nidempotent void redirectWhisperGroup(int session, string source, string target) throws ServerBootedException, InvalidSessionException, InvalidSecretException;\nidempotent NameMap getUserNames(IdList ids) throws ServerBootedException, InvalidSecretException;\nidempotent IdMap getUserIds(NameList names) throws ServerBootedException, InvalidSecretException;\nint registerUser(UserInfoMap info) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nvoid unregisterUser(int userid) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent void updateRegistration(int userid, UserInfoMap info) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent UserInfoMap getRegistration(int userid) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent NameMap getRegisteredUsers(string filter) throws ServerBootedException, InvalidSecretException;\nidempotent int verifyPassword(string name, string pw) throws ServerBootedException, InvalidSecretException;\nidempotent Texture getTexture(int userid) throws ServerBootedException, InvalidUserException, InvalidSecretException;\nidempotent void setTexture(int userid, Texture tex) throws ServerBootedException, InvalidUserException, InvalidTextureException, InvalidSecretException;\nidempotent int getUptime() throws ServerBootedException, InvalidSecretException;\n};\ninterface MetaCallback {\nvoid started(Server *srv);\nvoid stopped(Server *srv);\n};\nsequence<Server *> ServerList;\n[\"amd\"] interface Meta {\nidempotent Server *getServer(int id) throws InvalidSecretException;\nServer *newServer() throws InvalidSecretException;\nidempotent ServerList getBootedServers() throws InvalidSecretException;\nidempotent ServerList getAllServers() throws InvalidSecretException;\nidempotent ConfigMap getDefaultConf() throws InvalidSecretException;\nidempotent void getVersion(out int major, out int minor, out int patch, out string text);\nvoid addCallback(MetaCallback *cb) throws InvalidCallbackException, InvalidSecretException;\nvoid removeCallback(MetaCallback *cb) throws InvalidCallbackException, InvalidSecretException;\nidempotent int getUptime();\nidempotent string getSlice();\nidempotent Ice::SliceChecksumDict getSliceChecksums();\n};\n};\n")); } |