Update Doku aus Driversourcen
Change-Id: I455f0813b970151089b3dc1b8d9407eea323cdd1
diff --git a/doc/master/valid_write b/doc/master/valid_write
index 31fe43b..3f73ca3 100644
--- a/doc/master/valid_write
+++ b/doc/master/valid_write
@@ -1,33 +1,52 @@
SYNOPSIS
- string valid_write(string path, string uid, string func, object ob)
+ string valid_write(string path, string uid, string func, object ob)
DESCRIPTION
- This function is called to check if the object ob with the
- user-id uid has write permissions to the file given by path
- for the operation named by func. It should return 0 if
- permission is denied, or the normalized path if permission is
- granted. You can also return 1 to indicate that the path can
- be used unchanged.
+ This function is called to check if the object ob with the
+ user-id uid has write permissions to the file given by path
+ for the operation named by func. It should return 0 if
+ permission is denied, or the normalized path if permission is
+ granted. You can also return 1 to indicate that the path can
+ be used unchanged.
- The returned pathname must not contain ``..'', a leading /
- will be stripped by the interpreter.
+ The returned pathname must not contain "..", a leading /
+ will be stripped by the interpreter. By default, the returned
+ path must also not contain space characters; if the driver
+ is instructed to allow them, the preprocessor macro
+ __FILENAME_SPACES__ is defined.
- Func denotes the efun call or other operation that caused
- valid_write() to be called:
- cindent,
- do_rename (efun rename(), for the old and then for the new name),
- ed_start (whenever the builtin ed tries to write to a file),
- mkdir,
- remove_file (efun rm()),
- rmdir,
- save_object,
- write_bytes,
- write_file.
+ Func denotes the efun call or other operation that caused
+ valid_write() to be called:
- Note that this function is called in compat mode as well. If
- you need to be compatible with the old 2.4.5-mudlib, redirect
- these calls to the valid_read/valid_write in the user
- object.
+ copy_file : for the target file or directory name
+ rename_from : efun rename(), for the original name
+ rename_to : efun rename(), for the new name
+ ed_start : whenever the builtin ed tries to write to a file
+ garbage_collection
+ mkdir
+ memdump
+ objdump
+ opcdump
+ remove_file : efun rm()
+ rmdir
+ save_object
+ write_bytes
+ write_file
+
+ For save_object(), the <path> passed is the filename as given
+ in the efun call. If for this efun a filename ending in ".c" is
+ returned, the ".c" will be stripped from the filename.
+
+ This function is called in compat mode as well. If
+ you need to be compatible with the old 2.4.5-mudlib, redirect
+ these calls to the valid_read/valid_write in the user
+ object.
+
+HISTORY
+ LDMud 3.2.8 adds operation "copy_file", and replaces "do_rename"
+ by "rename_from" and "rename_to".
+ LDMud 3.2.9 adds operation "garbage_collection".
+ LDMud 3.3.526 adds operation "memdump".
SEE ALSO
- valid_read(M), make_path_absolute(M)
+ valid_read(M), make_path_absolute(M)