On 08/30/2010 01:50 AM, Neil Van Dyke wrote: > Has anyone already implemented Racket API for dealing with Unix file > permissions/owner/group?
> * Procedure(s) to set a named file's permissions, owner, and/or group. > > * Procedure to get the permissions, owner, and group of a named file. Sure, I did that. I'll attach a quick demonstration.
#lang racket/base (require (prefix-in perm: (planet synx/util:2/permissions)) (prefix-in user: (planet synx/user:1)) (prefix-in stat: (planet synx/stat:2)) (prefix-in s: (planet synx/stat:2/lookup))) (define (example) (define name "test.txt") (define info (user:info "synx")) (with-output-to-file name #:exists 'replace void) ; the following fails unless run as root or as whatever user you are (perm:chown name (user:user-uid info) (user:user-gid info)) (perm:chmod name #o600) (let-values (((mode new-uid new-gid) (stat:stat name s:mode s:uid s:gid))) (write (list (number->string mode #o10) new-uid new-gid))) (newline) (with-output-to-file name #:exists 'append (λ () (write '(secret stuff)) (newline)))) (example)
signature.asc
Description: OpenPGP digital signature
_________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/users