/* * $Id; stfufs.h $ * * Author: Tomi Ollila -- too ät iki piste fi * * Copyright (c) 2007 Tomi Ollila * All rights reserved * * Created: Tue Aug 28 21:49:35 EEST 2007 too * Last modified: Thu Jan 10 15:28:11 EET 2008 too */ #ifndef STFUFS_H #define STFUFS_H #if !STFUFS_CLIENT && !STFUFS_SERVER #error #endif #ifndef UTIL_H #include "util.h" #endif #if STFUFS_CLIENT struct clientargs { /* malloc later */ int doconn; int port; char proxyhost[240]; int proxyport; char sshhost[240]; char sshpath[240]; int sshport; }; /* in stfufs-client.c */ void stfufs_client_args_init(struct clientargs * cargs); int stfufs_client_remotehost_arg(struct clientargs * cargs, const char * arg); int stfufs_client_conn_arg(struct clientargs * cargs, const char * arg); int stfufs_client_bind_arg(struct clientargs * cargs, const char * arg); int stfufs_client_proxy_arg(struct clientargs * cargs, const char * arg); int stfufs_client_create_connection(const char * prgname, struct clientargs * cargs, int * mmsp); /* in stfufs-client-fuse.c */ void stfufs_client_fuse_main(int argc, char ** argv) GCCATTR_NORETURN; #elif STFUFS_SERVER void stfufs_server(void) GCCATTR_NORETURN; #endif #if STFUFS_PROTOCOL enum { STFUFS__OFFSET = 0x7a5120ff, STFUFS__GETATTR, STFUFS__READLINK, STFUFS__GETDIR, STFUFS__MKNOD, STFUFS__MKDIR, STFUFS__UNLINK, STFUFS__RMDIR, STFUFS__SYMLINK, STFUFS__RENAME, STFUFS__LINK, STFUFS__CHMOD, STFUFS__CHOWN, STFUFS__TRUNCATE, STFUFS__UTIME, STFUFS__OPEN, STFUFS__READ, STFUFS__WRITE, STFUFS__STATFS, STFUFS__FLUSH, STFUFS__RELEASE, STFUFS__FSYNC, STFUFS__SETXATTR, STFUFS__GETXATTR, STFUFS__LISTXATTR, STFUFS__REMOVEXATTR, /* 2.3 */ STFUFS__OPENDIR, STFUFS__READDIR, STFUFS__RELEASEDIR, STFUFS__FSYNCDIR, STFUFS__INIT, STFUFS__DESTROY, /* 2.5 */ STFUFS__ACCESS, STFUFS__CREATE, STFUFS__FTRUNCATE, STFUFS__FGETATTR, /* 2.6 */ STFUFS__LOCK, STFUFS__UTIMENS, STFUFS__BMAP }; #endif #endif /* STFUFS_H */ /* * Local variables: * mode: c * c-file-style: "stroustrup" * tab-width: 8 * End: */