#! /usr/local/bin/python -O """ Dummy VFS for Midnight Commander. Just for a test. Author: Oleg BroytMann . Copyright (C) 2004 PhiloSoft Design. License: GPL. """ __version__ = "0.3.0" __revision__ = "$Id: dummy,v 1.6 2004/06/13 10:23:20 phd Exp $" __date__ = "$Date: 2004/06/13 10:23:20 $"[7:-2] __author__ = "Oleg Broytmann " __copyright__ = "Copyright (C) 2004 PhiloSoft Design" import sys def log_error(msg): sys.stderr.write(msg + '\n') def error(msg): log_error(msg + '\n') sys.exit(1) if len(sys.argv) < 2: error("""\ It is not a program - it is a dummy VFS for Midnight Commander. Put it in /usr/lib/mc/extfs.""") def mcdummy_list(): """List the entire VFS""" # Ignore the VFS name (sys.argv[2]) # Emit a dummy listing print "-r--r--r-- 1 user group 0 Jun 13 02:20 file0" print "-r--r--r-- 1 user group 1 Jun 13 02:21 file1" print "dr--r--r-- 1 user group 2 Jun 13 02:22 subdir" print "-r--r--r-- 1 user group 3 Jun 13 02:23 subdir/file3" print "-r--r--r-- 1 user group 4 Jun 13 02:23 subdir/file4" def mcdummy_copyout(): """Extract a file from the VFS""" # Ignore the VFS name (sys.argv[2]) dummy_filename = sys.argv[3] real_filename = sys.argv[4] real_file = open(real_filename, 'w') real_file.write("Copied from %s\n" % dummy_filename) real_file.write("Copied to %s\n" % real_filename) real_file.close() def mcdummy_copyin(): """Put a file to the VFS""" # Ignore the VFS name (sys.argv[2]) dummy_filename = sys.argv[3] real_filename = sys.argv[4] real_file = open(real_filename + "-dummy.tmp", 'w') real_file.write("Copied from %s\n" % real_filename) real_file.write("Copied to %s\n" % dummy_filename) real_file.close() g = globals() command = sys.argv[1] procname = "mcdummy_" + command if not g.has_key(procname): error("Unknown command %s" % command) g[procname]()