Everyman #38
Aliases: Everyman, everyone, no_one, noone
6 verbs · 70 properties · 0 children
Verbs
| Verb | Spec | Flags | Definer | Lines |
|---|---|---|---|---|
eval | this none this | rxd | #38 | 14 |
moveto | this none this | rxd | #38 | 1 |
eval_d | this none this | rxd | #38 | 15 |
call_verb | this none this | rxd | #38 | 5 |
bad_eval | this none this | rxd | #38 | 13 |
set_* | this none this | rxd | #38 | 5 |
Properties
| Property | Definer | Flags | Owner | Value |
|---|---|---|---|---|
_mail_task | #40 | rc | #36 | <clear> |
messages_going | #40 | c | #36 | {} |
mail_lists | #40 | rc | #36 | <clear> |
mail_notify | #40 | r | #2 | <clear> |
mail_forward | #40 | rc | #36 | "Everyman ($no_one) can not receive mail." |
mail_options | #40 | rc | #36 | {} |
message_keep_date | #40 | rc | #36 | <clear> |
messages_kept | #40 | rc | #36 | {} |
current_message | #40 | c | #36 | {0, -1300000000} |
messages | #40 | c | #36 | {} |
ansi_options | #95 | r | #36 | <clear> |
replace_codes | #95 | r | #36 | <clear> |
features | #6 | r | #36 | <clear> |
previous_connection | #6 | | #2 | <clear> |
email_address | #6 | | #2 | "$no_one" |
last_disconnect_time | #6 | r | #2 | 2147483647 |
help | #6 | rc | #36 | 0 |
more_msg | #6 | rc | #36 | <clear> |
linetask | #6 | r | #36 | <clear> |
linesleft | #6 | r | #36 | <clear> |
linebuffer | #6 | | #36 | <clear> |
pagelen | #6 | r | #36 | <clear> |
owned_objects | #6 | r | #2 | {} |
linelen | #6 | r | #36 | <clear> |
current_folder | #6 | c | #36 | <clear> |
all_connect_places | #6 | | #2 | <clear> |
last_connect_place | #6 | | #2 | <clear> |
brief | #6 | rc | #36 | <clear> |
lines | #6 | c | #36 | <clear> |
page_absent_msg | #6 | rc | #36 | <clear> |
pq | #6 | rc | #36 | <clear> |
pqc | #6 | rc | #36 | <clear> |
page_origin_msg | #6 | rc | #36 | <clear> |
page_echo_msg | #6 | rc | #36 | "... no one out there to see it." |
edit_options | #6 | rc | #36 | <clear> |
last_connect_time | #6 | r | #2 | 2147483647 |
ownership_quota | #6 | | #36 | -10000 |
gender | #6 | rc | #36 | <clear> |
prc | #6 | rc | #36 | <clear> |
ppc | #6 | rc | #36 | <clear> |
poc | #6 | rc | #36 | <clear> |
psc | #6 | rc | #36 | <clear> |
pr | #6 | rc | #36 | <clear> |
pp | #6 | rc | #36 | <clear> |
po | #6 | rc | #36 | <clear> |
ps | #6 | rc | #36 | <clear> |
home | #6 | rc | #36 | #-1 |
password | #6 | | #2 | <clear> |
gaglist | #6 | rc | #36 | <clear> |
paranoid | #6 | rc | #36 | <clear> |
display_options | #6 | rc | #36 | <clear> |
verb_subs | #6 | rc | #36 | <clear> |
first_connect_time | #6 | r | #2 | 2147483647 |
size_quota | #6 | | #36 | {25000, 0, -1119114564, 0} |
last_password_time | #6 | | #2 | <clear> |
last_connect_attempt | #6 | | #2 | <clear> |
page_count_start_time | #6 | r | #2 | <clear> |
ping_task | #6 | r | #36 | <clear> |
infobar | #6 | rc | #36 | <clear> |
value_base | #102 | r | #2 | <clear> |
damage_base | #102 | r | #2 | <clear> |
x_loc | #102 | r | #36 | <clear> |
y_loc | #102 | r | #36 | <clear> |
ansi_title | #102 | r | #36 | <clear> |
obvious | #102 | r | #36 | <clear> |
build_help | #102 | rc | #36 | <clear> |
key | #1 | c | #36 | <clear> |
aliases | #1 | r | #2 | {"Everyman", "everyone", "no_one", "noone"} |
description | #1 | rc | #36 | "The character used for \"safe\" evals." |
object_size | #1 | r | #36 | {5619, -1090650497} |
Ancestry
Ancestors (nearest first): #40 Generic Mail Receiving Player → #95 ANSI PC → #6 generic player → #102 subthing → #1 Root Class
Children: none
Call graph
Source
eval
Referenced by
- #49:uncomment line 20:
$no_one:eval - #59:verb_documentation line 15:
$no_one:eval - #59:verb_usage line 14:
$no_one:eval
Source
1"eval(code)"; 2"Evaluate code with $no_one's permissions (so you won't damage anything)."; 3"If code does not begin with a semicolon, set this = caller (in the code to be evaluated) and return the value of the first `line' of code. This means that subsequent lines will not be evaluated at all."; 4"If code begins with a semicolon, set this = caller and let the code decide for itself when to return a value. This is how to do multi-line evals."; 5exp = args[1]; 6if (this:bad_eval(exp)) 7return E_PERM; 8endif 9set_task_perms(this); 10if (exp[1] != ";") 11return eval(tostr("this=", caller, "; return ", exp, ";")); 12else 13return eval(tostr("this=", caller, ";", exp, ";")); 14endif
moveto
Referenced by
none
Source
1return 0;
eval_d
Referenced by
- #10:request_character line 23:
$no_one:eval_d - #30:subst line 21:
$no_one:eval_d - #30:subst line 31:
$no_one:eval_d - #58:@gethelp line 12:
$no_one:eval_d - #58:set_eval_env line 5:
$no_one:eval_d
Source
1":eval_d(code)"; 2"exactly like :eval except that the d flag is unset"; 3"Evaluate code with $no_one's permissions (so you won't damage anything)."; 4"If code does not begin with a semicolon, set this = caller (in the code to be evaluated) and return the value of the first `line' of code. This means that subsequent lines will not be evaluated at all."; 5"If code begins with a semicolon, set this = caller and let the code decide for itself when to return a value. This is how to do multi-line evals."; 6exp = args[1]; 7if (this:bad_eval(exp)) 8return E_PERM; 9endif 10set_task_perms(this); 11if (exp[1] != ";") 12return $code_utils:eval_d(tostr("this=", caller, "; return ", exp, ";")); 13else 14return $code_utils:eval_d(tostr("this=", caller, ";", exp, ";")); 15endif
call_verb
Referenced by
none
Source
1"call_verb(object, verb name, args)"; 2"Call verb with $no_one's permissions (so you won't damage anything)."; 3"One could do this with $no_one:eval, but ick."; 4set_task_perms(this); 5return args[1]:(args[2])(@args[3]);
bad_eval
Referenced by
- #38:eval line 6:
this:bad_eval - #38:eval_d line 7:
this:bad_eval - #59:eval_d line 7:
$no_one:bad_eval
Source
1"Return 1 if this code will call fork, suspend, or eval."; 2"At present it's overzealous---it should check for delimited uses of the above calls, in case someone has a variable called prevalent."; 3exp = args[1]; 4if ((index(exp, "eval") || index(exp, "fork")) || index(exp, "suspend")) 5"Well, they had one of the evil words in here. See if it was in a quoted string or not -- we want to permit player:tell(\"Gentlemen use forks.\")"; 6for bad in ({"eval", "fork", "suspend"}) 7l = index(exp, bad); 8if (l && (!$code_utils:inside_quotes(exp[1..l]))) 9return 1; 10endif 11endfor 12endif 13return 0;
set_*
Referenced by
none
Source
1if (!caller_perms().wizard) 2return E_PERM; 3else 4return pass(@args); 5endif