]> git.treefish.org Git - mtxbot.git/blobdiff - src/mtxbot-post.py
fix fifo check
[mtxbot.git] / src / mtxbot-post.py
index 1ba56c4f2de103fc1b28852ac655dcb6b7583950..8d1fac8910ca76fb3f80df288247c13c8050e726 100755 (executable)
@@ -11,17 +11,19 @@ assert sys.version_info >= (3, 5)
 
 if len(sys.argv) != 2:
     print("Usage: %s <channel>" % sys.argv[0])
+    sys.exit(1)
 
 fifo_dir = os.getenv('MTXBOT_FIFO_DIR', '/run/mtxbot')
 fifo_path = "%s/%s" % (fifo_dir, sys.argv[1])
 
 if not os.path.isdir(fifo_dir):
     print("Fifo directory %s does not exist!" % fifo_dir, file=sys.stderr)
-    sys.exit(1)
+    sys.exit(2)
 
-if not stat.S_ISFIFO( os.stat(fifo_path).st_mode ):
+if not ( os.path.exists(fifo_path) and
+         stat.S_ISFIFO(os.stat(fifo_path).st_mode) ):
     print("Channel %s does not exist!" % sys.argv[1], file=sys.stderr)
-    sys.exit(2)
+    sys.exit(3)
 
 for i in range(0, 10):
     fifo = -1
@@ -37,4 +39,4 @@ for i in range(0, 10):
             posix.close(fifo)
 
 print("Error posting to channel %s!" % sys.argv[1], file=sys.stderr)
-sys.exit(3)
+sys.exit(4)