Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,35 @@
|
|||
#!/usr/local/bin/spar
|
||||
pragma annotate( summary, "tmpfile" );
|
||||
pragma annotate( description, "Create a temporary file, securely and exclusively" );
|
||||
pragma annotate( description, "(opening it such that there are no possible race" );
|
||||
pragma annotate( description, "conditions). It's fine assuming local filesystem" );
|
||||
pragma annotate( description, "semantics (NFS or other networking filesystems can" );
|
||||
pragma annotate( description, "have signficantly more complicated semantics for" );
|
||||
pragma annotate( description, "satisfying the 'no race conditions' criteria). The" );
|
||||
pragma annotate( description, "function should automatically resolve name collisions" );
|
||||
pragma annotate( description, "and should only fail in cases where permission is" );
|
||||
pragma annotate( description, "denied, the filesystem is read-only or full, or similar" );
|
||||
pragma annotate( description, "conditions exist (returning an error or raising an" );
|
||||
pragma annotate( description, "exception as appropriate to the language/environment)." );
|
||||
pragma annotate( see_also, "http://rosettacode.org/wiki/Secure_temporary_file" );
|
||||
pragma annotate( author, "Ken O. Burtch" );
|
||||
pragma license( unrestricted );
|
||||
|
||||
pragma restriction( no_external_commands );
|
||||
|
||||
procedure tmpfile is
|
||||
temp : file_type;
|
||||
contents : string;
|
||||
begin
|
||||
? "Creating a temporary file";
|
||||
create( temp );
|
||||
put_line( temp, "Hello World");
|
||||
|
||||
? "Reading a temporary file";
|
||||
reset( temp, in_file);
|
||||
contents := get_line( temp );
|
||||
put_line( "File contains: " & contents );
|
||||
|
||||
? "Discarding a temporary file";
|
||||
close( temp );
|
||||
end tmpfile;
|
||||
Loading…
Add table
Add a link
Reference in a new issue