Initial original import from: fuse-2.4.2-2.fc4
[captive.git] / src / libcaptive / client / vfs.c
index b71d0a9..180f389 100644 (file)
@@ -25,7 +25,9 @@
 #include "vfs-parent.h"
 #include "vfs-slave.h"
 #include "init.h"
-#include "giochannel-blind.h"  /* for captive_giochannel_setup() */
+#include "lib.h"       /* for captive_giochannel_setup() */
+#include <unistd.h>
+#include <string.h>
 
 
 static gpointer captive_vfs_object_parent_class=NULL;
@@ -91,6 +93,24 @@ CaptiveVfsObject *captive_vfs_object;
        g_return_val_if_fail(captive_vfs_object_return!=NULL,GNOME_VFS_ERROR_BAD_PARAMETERS);
        g_return_val_if_fail(options!=NULL,GNOME_VFS_ERROR_BAD_PARAMETERS);
 
+#ifndef MAINTAINER_MODE
+       /* We are not sandboxing || we are the master */
+       if (!options->sandbox || (options->sandbox_server_argv || options->sandbox_server_ior)) {
+int fd;
+
+               /* Shameless advertisement: */
+               for (fd=2 /* STDERR */;fd>=1 /* STDOUT */;fd--) {
+                       if (isatty(fd)) {
+const gchar *msg="Captive NTFS v" VERSION ".  Check a new version at: http://www.jankratochvil.net/\n";
+
+                               /* Prevent: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result */
+                               if (strlen(msg)==write(fd,msg,strlen(msg)))
+                                       break;
+                               }
+                       }
+               }
+#endif /* !MAINTAINER_MODE */
+
        /* Here is the first initializaton point of parent in sandboxed mode. */
        captive_log_init(options);