int MultiServer::createSlink(ServerContext& s, const char *path, const char *link) { string subdir; FileServer *server = getServer(s, path, subdir); if (link) { string lnk; FileServer *server2 = getServer(s, link, lnk); if (server2 && server == server2) { link = lnk.c_str(); } else { return -EPERM; } } if (server && !server->readOnly(s)) { return server->createSlink(s, subdir.c_str(), link); } return -EPERM; }