mud/fluffos-2.23-ds03/testsuite/inherit/master/valid.c
2020-09-06 05:43:07 -07:00

98 lines
1.7 KiB
C

// file: /inherit/master/valid.c
// mudlib: Lil
// separated out from master.c to reduce the complexity a bit.
#include <globals.h>
void create() {
}
int
valid_shadow(object ob)
{
#ifdef __PACKAGE_UIDS__
if (getuid(ob) == ROOT_UID) {
return 0;
}
#endif
if (ob->query_prevent_shadow(previous_object())) {
return 0;
}
return 1;
}
int
valid_author(string)
{
return 1;
}
// valid_override: controls which simul_efuns may be overridden with
// efun:: prefix and which may not. This function is only called at
// object compile-time.
//
// returns: 1 if override is allowed, 0 if not.
int
valid_override(string file, string name)
{
if (file == OVERRIDES_FILE) {
return 1;
}
if ((name == "move_object") && (file != BASE))
return 0;
// may also wish to protect destruct, shutdown, snoop, and exec.
return 1;
}
// valid_seteuid: determines whether an object ob can become euid str.
// returns: 1 if seteuid() may succeed, 0 if not.
int
valid_seteuid(object, string)
{
return 1;
}
// valid_domain: decides if a domain may be created
// returns: 1 if domain may be created, 0 if not.
int
valid_domain(string)
{
return 1;
}
// valid_socket: controls access to socket efunctions
// return: 1 if access allowed, 0 if not.
int
valid_socket(object, string, mixed *)
{
return 1;
}
// Write and Read privileges:
//
// valid_write: called with the file name, the object initiating the call,
// and the function by which they called it.
// return: 1 if access allowed, 0 if access not allowed.
int
valid_write(string, mixed, string)
{
return 1;
}
// valid_read: called exactly the same as valid_write()
int
valid_read(string, mixed, string)
{
return 1;
}
private int y = 1;