diff options
-rw-r--r-- | src/auth.cpp | 12 | ||||
-rw-r--r-- | src/auth.h | 4 | ||||
-rw-r--r-- | src/server.cpp | 8 |
3 files changed, 13 insertions, 11 deletions
diff --git a/src/auth.cpp b/src/auth.cpp index 9920e0e40..7326a6042 100644 --- a/src/auth.cpp +++ b/src/auth.cpp @@ -28,8 +28,8 @@ with this program; if not, write to the Free Software Foundation, Inc., std::set<std::string> privsToSet(u64 privs) { std::set<std::string> s; - if(privs & PRIV_BUILD) - s.insert("build"); + if(privs & PRIV_INTERACT) + s.insert("interact"); if(privs & PRIV_TELEPORT) s.insert("teleport"); if(privs & PRIV_SETTIME) @@ -52,8 +52,8 @@ std::set<std::string> privsToSet(u64 privs) std::string privsToString(u64 privs) { std::ostringstream os(std::ios_base::binary); - if(privs & PRIV_BUILD) - os<<"build,"; + if(privs & PRIV_INTERACT) + os<<"interact,"; if(privs & PRIV_TELEPORT) os<<"teleport,"; if(privs & PRIV_SETTIME) @@ -89,7 +89,9 @@ u64 stringToPrivs(std::string str) { std::string s = trim(f.next(",")); if(s == "build") - privs |= PRIV_BUILD; + privs |= PRIV_INTERACT; + else if(s == "interact") + privs |= PRIV_INTERACT; else if(s == "teleport") privs |= PRIV_TELEPORT; else if(s == "settime") diff --git a/src/auth.h b/src/auth.h index 0ef94735f..6f176931a 100644 --- a/src/auth.h +++ b/src/auth.h @@ -31,7 +31,7 @@ with this program; if not, write to the Free Software Foundation, Inc., // of the player, and define things they're allowed to do. See also // the static methods Player::privsToString and stringToPrivs that // convert these to human-readable form. -const u64 PRIV_BUILD = 1; // Can build - i.e. modify the world +const u64 PRIV_INTERACT = 1; // Can interact const u64 PRIV_TELEPORT = 2; // Can teleport const u64 PRIV_SETTIME = 4; // Can set the time const u64 PRIV_PRIVS = 8; // Can grant and revoke privileges @@ -46,7 +46,7 @@ const u64 PRIV_PASSWORD = 256; // Can set other players' passwords // Default privileges - these can be overriden for new players using the // config option "default_privs" - however, this value still applies for // players that existed before the privileges system was added. -const u64 PRIV_DEFAULT = PRIV_BUILD|PRIV_SHOUT; +const u64 PRIV_DEFAULT = PRIV_INTERACT|PRIV_SHOUT; const u64 PRIV_ALL = 0x7FFFFFFFFFFFFFFFULL; const u64 PRIV_INVALID = 0x8000000000000000ULL; diff --git a/src/server.cpp b/src/server.cpp index f12fd261e..3b2b45225 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -2381,7 +2381,7 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id) } else if(command == TOSERVER_SIGNNODETEXT) { - if((getPlayerPrivs(player) & PRIV_BUILD) == 0) + if((getPlayerPrivs(player) & PRIV_INTERACT) == 0) return; /* u16 command @@ -2562,7 +2562,7 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id) // Disallow moving items in elsewhere than player's inventory // if not allowed to build - if((getPlayerPrivs(player) & PRIV_BUILD) == 0 + if((getPlayerPrivs(player) & PRIV_INTERACT) == 0 && (ma->from_inv != "current_player" || ma->to_inv != "current_player")) { @@ -2628,7 +2628,7 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id) { IDropAction *da = (IDropAction*)a; // Disallow dropping items if not allowed to build - if((getPlayerPrivs(player) & PRIV_BUILD) == 0) + if((getPlayerPrivs(player) & PRIV_INTERACT) == 0) { delete a; return; @@ -2976,7 +2976,7 @@ void Server::ProcessData(u8 *data, u32 datasize, u16 peer_id) /* Make sure the player is allowed to do it */ - bool build_priv = (getPlayerPrivs(player) & PRIV_BUILD) != 0; + bool build_priv = (getPlayerPrivs(player) & PRIV_INTERACT) != 0; if(!build_priv) { infostream<<"Ignoring interaction from player "<<player->getName() |