4 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-a" />
5 <meta http-equiv="Content-Language" content="en" />
6 <meta name="description" content="SILC Secure Internet Live Conferencing" />
7 <meta name="keywords" content="SILC, secure, chat, protocol, cipher, encrypt, SKE" />
8 <meta content="INDEX, FOLLOW" name="ROBOTS" />
9 <style type="text/css">
11 body { color: #000000; background: #f0f0f0; font-family: Helvetica, Arial, Sans-serif; }
12 a:link { text-decoration: none; color: #2f488f; }
13 a:visited { text-decoration: none;color: #2f488f; }
14 a:active { text-decoration: none; color: #2f488f; }
19 <body topmargin="0" leftmargin="0" marginheight="0" marginwidth="0">
21 <table border="0" cellspacing="0" cellpadding="6" width="100%">
22 <tr valign="top" bgcolor="#dddddd">
23 <td><small>Copyright © 2001 - 2007 SILC Project<br />
24 <a href="http://silcnet.org">SILC Project Website</a></small></td>
25 <td align="right"><small>
26 <a href="index.html">SILC Toolkit Reference Manual</a><br />
27 <a href="toolkit_index.html">Index</a></small></td>
31 <table border="0" cellspacing="0" cellpadding="0" width="100%">
32 <tr bgcolor="#444444"><td><img src="space.gif" width="1" height="1"border="0" alt="" ></td></tr>
35 <table cellpadding="0" cellspacing="0" border="0">
38 <td width="200" bgcolor="#f0f0f0">
39 <img src="space.gif" width="1" height="1" border="0" alt="">
40 <table width="100%" cellpadding="2" cellspacing="2" border="0">
44 <!-- Template file for the big index that appears in the Toolkit reference
45 manual on the left side. With this file it is possible to add other than
46 automatically generated links to that list. -->
48 <a href="index.html"><img src="box.gif" border="0" alt="">SILC Toolkit Reference Manual</a><br />
51 <a href=silccryptlib.html><img src=box.gif border=0 alt=>SILC Crypto Library</a><br />
52 <a href=silcrng_intro.html><img src=box2.gif border=0 alt=>Introduction to SILC RNG</a><br />
53 <a href=silcrng.html><img src=box2.gif border=0 alt=>SILC RNG Interface</a><br />
54 <a href=silccipher.html><img src=box2.gif border=0 alt=>SILC Cipher API</a><br />
55 <a href=silcpkcs.html><img src=box2.gif border=0 alt=>SILC PKCS API</a><br />
56 <a href=silcpk.html><img src=box2.gif border=0 alt=>SILC Public Key API</a><br />
57 <a href=silcpkcs1.html><img src=box2.gif border=0 alt=>SILC PKCS #1 API</a><br />
58 <a href=silchash.html><img src=box2.gif border=0 alt=>SILC Hash Interface</a><br />
59 <a href=silchmac.html><img src=box2.gif border=0 alt=>SILC HMAC Interface</a><br />
60 <a href=silccorelib.html><img src=box.gif border=0 alt=>SILC Core Library</a><br />
61 <a href=silcauth.html><img src=box2.gif border=0 alt=>SILC Authentication Interface</a><br />
62 <a href=silcmessage.html><img src=box2.gif border=0 alt=>SILC Message Interface</a><br />
63 <a href=silcchannel.html><img src=box2.gif border=0 alt=>SILC Channel Interface</a><br />
64 <a href=silccommand.html><img src=box2.gif border=0 alt=>SILC Command Interface</a><br />
65 <a href=silcnotify.html><img src=box2.gif border=0 alt=>SILC Notify Interface</a><br />
66 <a href=silcstatus.html><img src=box2.gif border=0 alt=>SILC Status Types</a><br />
67 <a href=silcmode.html><img src=box2.gif border=0 alt=>SILC Modes</a><br />
68 <a href=silcid.html><img src=box2.gif border=0 alt=>SILC ID Interface</a><br />
69 <a href=silcargument.html><img src=box2.gif border=0 alt=>SILC Argument Interface</a><br />
70 <a href=silcattrs.html><img src=box2.gif border=0 alt=>SILC Attributes Interface</a><br />
71 <a href=silcpacket.html><img src=box2.gif border=0 alt=>Packet Engine Interface</a><br />
72 <a href=silcpubkey.html><img src=box2.gif border=0 alt=>SILC Public Key Payload Interface</a><br />
73 <a href=silcskelib.html><img src=box.gif border=0 alt=>SILC Key Exchange Library</a><br />
74 <a href=silcske.html><img src=box2.gif border=0 alt=>SILC SKE Interface</a><br />
75 <a href=silcconnauth.html><img src=box2.gif border=0 alt=>SILC Connection Authentication Interface</a><br />
76 <a href=silcvcardlib.html><img src=box.gif border=0 alt=>SILC VCard Library</a><br />
77 <a href=silcvcard.html><img src=box2.gif border=0 alt=>SILC VCard Interface</a><br />
78 <a href=silcmathlib.html><img src=box.gif border=0 alt=>SILC Math Library</a><br />
79 <a href=silcmp.html><img src=box2.gif border=0 alt=>SILC MP Interface</a><br />
80 <a href=silcmath.html><img src=box2.gif border=0 alt=>SILC Math Interface</a><br />
81 <a href=silcclientlib.html><img src=box.gif border=0 alt=>SILC Client Library</a><br />
82 <a href=silcclient_using.html><img src=box2.gif border=0 alt=>Using SILC Client Library Tutorial</a><br />
83 <a href=command_reply_args.html><img src=box2.gif border=0 alt=>Arguments for <b>command_reply</b> Client Operation</a><br />
84 <a href=silcstatus_args.html><img src=box2.gif border=0 alt=>SilcStatus Error Arguments in <b>command_reply</b> Client Operation</a><br />
85 <a href=notifyargs.html><img src=box2.gif border=0 alt=>Arguments for <b>notify</b> Client Operation</a><br />
86 <a href=silcclient_unicode.html><img src=box2.gif border=0 alt=>Unicode and UTF-8 Strings in Client Library</a><br />
87 <a href=silcclient.html><img src=box2.gif border=0 alt=>Client Library Interface Reference</a><br />
88 <a href=silcclient_entry.html><img src=box2.gif border=0 alt=>Client Entry Interface Reference</a><br />
89 <a href=silcasn1lib.html><img src=box.gif border=0 alt=>SILC ASN.1 Library</a><br />
90 <a href=silcasn1.html><img src=box2.gif border=0 alt=>SILC ASN.1 Interface</a><br />
91 <a href=silcber.html><img src=box2.gif border=0 alt=>SILC BER interface</a><br />
92 <a href=silchttplib.html><img src=box.gif border=0 alt=>SILC HTTP Library</a><br />
93 <a href=silchttpserver.html><img src=box2.gif border=0 alt=>SILC HTTP Server Interface</a><br />
94 <a href=silchttpphp.html><img src=box2.gif border=0 alt=>SILC HTTP PHP Translator</a><br />
95 <a href=silcutillib.html><img src=box.gif border=0 alt=>SILC Utility Library</a><br />
96 <a href=silctypes.html><img src=box2.gif border=0 alt=>Basic Types and Definitions</a><br />
97 <a href=silcbuffer.html><img src=box2.gif border=0 alt=>Data Buffer Interface</a><br />
98 <a href=silcbuffmt.html><img src=box2.gif border=0 alt=>Data Buffer Format Interface</a><br />
99 <a href=silchashtable.html><img src=box2.gif border=0 alt=>Hash Table Interface</a><br />
100 <a href=silcmemory.html><img src=box2.gif border=0 alt=>Memory Allocation Interface</a><br />
101 <a href=silcstack.html><img src=box2.gif border=0 alt=>Data Stack (memory pool) Interface</a><br />
102 <a href=silcfsm.html><img src=box2.gif border=0 alt=>Finite State Machine Interface</a><br />
103 <a href=silcthread.html><img src=box2.gif border=0 alt=>Thread Interface</a><br />
104 <a href=silcmutex.html><img src=box2.gif border=0 alt=>Mutual Exclusion Lock Interface</a><br />
105 <a href=silccond.html><img src=box2.gif border=0 alt=>Condition Variable Interface</a><br />
106 <a href=silcatomic.html><img src=box2.gif border=0 alt=>Atomic Operations Interface</a><br />
107 <a href=silcnet.html><img src=box2.gif border=0 alt=>Network (TCP and UDP) Interface</a><br />
108 <a href=silcschedule.html><img src=box2.gif border=0 alt=>Scheduler Interface</a><br />
109 <a href=silcasync.html><img src=box2.gif border=0 alt=>Asynchronous Operation Interface</a><br />
110 <a href=silcstream.html><img src=box2.gif border=0 alt=>Abstract Stream Interface</a><br />
111 <a href=silcsocketstream.html><img src=box2.gif border=0 alt=>Socket Stream Interface</a><br />
112 <a href=silcfdstream.html><img src=box2.gif border=0 alt=>File Descriptor Stream Interface</a><br />
113 <a href=silcfileutil.html><img src=box2.gif border=0 alt=>File Utility Functions</a><br />
114 <a href=silcstrutil.html><img src=box2.gif border=0 alt=>String Utility Interface</a><br />
115 <a href=silcsnprintf.html><img src=box2.gif border=0 alt=>Snprintf Interface</a><br />
116 <a href=silcutf8.html><img src=box2.gif border=0 alt=>UTF-8 String Interface</a><br />
117 <a href=silcstringprep.html><img src=box2.gif border=0 alt=>Stringprep Interface</a><br />
118 <a href=silcutil.html><img src=box2.gif border=0 alt=>Utility Functions</a><br />
119 <a href=silclist.html><img src=box2.gif border=0 alt=>List Interface</a><br />
120 <a href=silcdlist.html><img src=box2.gif border=0 alt=>Dynamic List Interface</a><br />
121 <a href=silcmime.html><img src=box2.gif border=0 alt=>MIME Interface</a><br />
122 <a href=silctime.html><img src=box2.gif border=0 alt=>Time Utility Functions</a><br />
123 <a href=silclog.html><img src=box2.gif border=0 alt=>Logging Interface</a><br />
124 <a href=silcconfig.html><img src=box2.gif border=0 alt=>Config File Interface</a><br />
125 <a href=silcskrlib.html><img src=box.gif border=0 alt=>SILC Key Repository Library</a><br />
126 <a href=silcskr.html><img src=box2.gif border=0 alt=>SILC SKR Interface</a><br />
127 <a href=silcaputillib.html><img src=box.gif border=0 alt=>SILC Application Utility Library</a><br />
128 <a href=silcapputil.html><img src=box2.gif border=0 alt=>SILC Application Utilities</a><br />
129 <a href=silcidcache.html><img src=box2.gif border=0 alt=>SILC ID Cache Interface</a><br />
130 <a href=silcsftplib.html><img src=box.gif border=0 alt=>SILC SFTP Library</a><br />
131 <a href=silcsftp.html><img src=box2.gif border=0 alt=>SILC SFTP Interface</a><br />
132 <a href=silcsftp_fs.html><img src=box2.gif border=0 alt=>SFTP Filesystems Interface</a><br />
135 <b>Resource Links</b>
137 <a href="http://silcnet.org"><img src="box.gif" border="0" alt="">SILC Project Website</a><br />
138 <a href="http://silcnet.org/support/documentation/"><img src="box.gif" border="0" alt="">SILC Protocol Documentation</a><br />
139 <a href="http://silcnet.org/support/documentation/wp/"><img src="box.gif" border="0" alt="">SILC White Paper</a><br />
140 <a href="http://silcnet.org/support/faq/"><img src="box.gif" border="0" alt="">SILC FAQs</a><br />
143 <br /><br /><br /><br />
148 <td bgcolor="#cccccc" background="dot.gif">
149 <img src="space.gif" width="1" height="1" border="0" alt=""></td>
151 <td width="720" bgcolor="#ffffff">
152 <img src="space.gif" width="1" height="1" border="0" alt="">
153 <table cellpadding="2" cellspacing="6" width="100%">
154 <tr><td valign="top">
156 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
158 <TITLE>silcsftp_fs.html</TITLE>
159 <!-- Source: silcsftp_fs.h -->
160 <!-- Generated with ROBODoc Version 3.2.3 (May 5 2014) -->
161 <!-- ROBODoc (c) 1994-2001 by Frans Slothouber and Jacco van Weert. -->
162 </HEAD><BODY BGCOLOR="#FFFFFF">
165 <FONT SIZE="+2" COLOR="#000055"><B><A NAME="SFTP Filesystems Interface">SFTP Filesystems Interface</A></FONT></B><BR><SMALL>Header: silcsftp_fs.h</SMALL><BR><BR>
168 <FONT COLOR="#000055">DESCRIPTION
170 <PRE><FONT FACE="Helvetiva,Arial,Sans-serif">
171 SILC SFTP Filesystem interface defines filesystems for the SFTP server
172 usage. The filesystems may be for example virtual memory filesystem
173 or real filesystem access.
175 Currently only implemented filesystem is memory file system.
179 Memory filesystem is a virtual filesystem which provides safe access
180 to files without actually revealing the underlaying physical filesystem
181 hierarchy or real filenames. Virtual directories can be added to the
182 filesystem and freely create filesystem hierarchy. The directories
183 can have subdirectories and files. The filesystem also provides limited
184 status information for files. The files in the filesystem are
185 virtual but they include the path to the real file. The real path
186 includes always a schema which indicates where the file really is
187 available. The only supported schema currently is "file://". In
188 the future it could support various others like "<A HREF="http://"">http://"</A> and "ldap://".
190 The filesystem also provides security and permission handling for
191 directories and files. Normal POSIX style permissions can be set
192 giving thus rights to reading, writing and/or executing. They behave
193 same way as defined in POSIX. It is also guaranteed that if the
194 writing to a file is not allowed in the memory filesystem, but it is
195 allowed in real physical filesystem the file still cannot be written.
196 However, the real physical filesystem permissions still matter, for
197 example if writing is enabled in the memory filesystem but it is not
198 enabled on physical filesystem, the file cannot be written.
200 The directories cannot be removed from remote access using the
201 filesystem access function sftp_rmdir. This is because the filesystem
202 is one-user filesystem and differentiating between users is not
203 possible. Thus, it would allow anyone to remove directories and
204 their contents. Removing directories is possible only locally using
205 the <A HREF="silcsftp_fs-silc_sftp_fs_memory_del_dir.html">silc_sftp_fs_memory_del_dir</A> function. The same thing is with
206 removing files as well. Files too can be removed only locally using
207 the <A HREF="silcsftp_fs-silc_sftp_fs_memory_del_file.html">silc_sftp_fs_memory_del_file</A> function. Also, files can not ever
208 be executed from remote access.
210 Also some of the file operation flags are not supported, such as
211 SILC_SFTP_FXF_CREAT, SILC_SFTP_FXF_TRUNC and SILC_SFTP_FXF_EXCL
212 since they would require access to a real filesystem file which does
213 not exist yet, or would mean destroying the file. However, the
214 SILC_SFTP_FXF_WRITE is supported since the file aready exists.
216 The memory filesystem does not provide symbolic links.
218 </FONT></PRE><LI><A HREF="silcsftp_fs-SilcSFTPFilesystemOps.html">SilcSFTPFilesystemOps</A>
219 <LI><A HREF="silcsftp_fs-SilcSFTPFilesystem.html">SilcSFTPFilesystem</A>
220 <LI><A HREF="silcsftp_fs-SilcSFTPFSMemoryPerm.html">SilcSFTPFSMemoryPerm</A>
221 <LI><A HREF="silcsftp_fs-silc_sftp_fs_memory_alloc.html">silc_sftp_fs_memory_alloc</A>
222 <LI><A HREF="silcsftp_fs-silc_sftp_fs_memory_free.html">silc_sftp_fs_memory_free</A>
223 <LI><A HREF="silcsftp_fs-silc_sftp_fs_memory_add_dir.html">silc_sftp_fs_memory_add_dir</A>
224 <LI><A HREF="silcsftp_fs-silc_sftp_fs_memory_del_dir.html">silc_sftp_fs_memory_del_dir</A>
225 <LI><A HREF="silcsftp_fs-silc_sftp_fs_memory_add_file.html">silc_sftp_fs_memory_add_file</A>
226 <LI><A HREF="silcsftp_fs-silc_sftp_fs_memory_del_file.html">silc_sftp_fs_memory_del_file</A>
228 <br /><br /><br /><br />
233 <td bgcolor="#cccccc" background="dot.gif">
234 <img src="space.gif" width="1" height="1" border="0" alt=""></td>
236 <td width="180" bgcolor="#f0f0f0">
237 <img src="space.gif" width="1" height="1" border="0" alt="">
238 <table width="100%" cellpadding="4" cellspacing="0">
239 <tr valign="top"><td>
241 <font face="Helvetica,Arial,Sans-serif" size="1">
244 <br /><br /><br /><br />
251 <table border="0" cellspacing="0" cellpadding="0" width="100%">
252 <tr bgcolor="#444444"><td><img src="space.gif" width="1" height="1"border="0" alt="" ></td></tr>
254 <table border="0" cellspacing="0" cellpadding="6" width="100%">
255 <tr valign="top" bgcolor="#dddddd">
256 <td><small>Copyright © 2001 - 2007 SILC Project<br />
257 <a href="http://silcnet.org">SILC Project Website</a></small></td>
258 <td align="right"><small>
259 <a href="index.html">SILC Toolkit Reference Manual</a><br />
260 <a href="toolkit_index.html">Index</a></small></td>