+ if (sid.empty())
+ {
+ ServerName = ConfValue("server")->getString("name");
+ sid = ConfValue("server")->getString("id");
+ ValidHost(ServerName, "<server:name>");
+ if (!sid.empty() && !ServerInstance->IsSID(sid))
+ throw CoreException(sid + " is not a valid server ID. A server ID must be 3 characters long, with the first character a digit and the next two characters a digit or letter.");
+ }
+ else
+ {
+ if (ServerName != ConfValue("server")->getString("name"))
+ throw CoreException("You must restart to change the server name or SID");
+ std::string nsid = ConfValue("server")->getString("id");
+ if (!nsid.empty() && nsid != sid)
+ throw CoreException("You must restart to change the server name or SID");
+ }