diff online.c @ 0:04124a4423d4 noffle

[svn] Initial revision
author enz
date Tue, 04 Jan 2000 11:35:42 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/online.c	Tue Jan 04 11:35:42 2000 +0000
@@ -0,0 +1,57 @@
+/*
+  online.c
+
+  $Id: online.c 3 2000-01-04 11:35:42Z enz $
+*/
+
+#include <unistd.h>
+#include "common.h"
+#include "config.h"
+#include "log.h"
+
+static void
+fileOnline( Str s )
+{
+    snprintf( s, MAXCHAR, "%s/lock/online", Cfg_spoolDir() );
+}
+
+Bool
+Online_true( void )
+{
+    FILE *f;
+    Str file;
+
+    fileOnline( file );
+    if ( ! ( f = fopen( file, "r" ) ) )
+        return FALSE;
+    fclose( f );
+    return TRUE;
+}
+
+void
+Online_set( Bool value )
+{
+    FILE *f;
+    Str file;
+
+    fileOnline( file );
+    if ( value )
+    {
+        if ( ! ( f = fopen( file, "a" ) ) )
+        {
+            Log_err( "Could not create %s", file );
+            return;
+        }
+        fclose( f );
+        Log_inf( "NOFFLE is now online" );
+    }
+    else
+    {
+        if ( unlink( file ) != 0 )
+        {
+            Log_err( "Cannot remove %s", file );
+            return;
+        }
+        Log_inf( "NOFFLE is now offline" );
+    }
+}