]> git.treefish.org Git - mtxbot.git/blobdiff - src/mtxbot-post.py
use b64 encoding
[mtxbot.git] / src / mtxbot-post.py
index 3673edade207af461706d74515cb20fa1eecd272..3e97ef2043f68675abe6929881002f13f0afab5f 100755 (executable)
@@ -1,5 +1,6 @@
 #!/usr/bin/env python3
 
+import base64
 import errno
 import os
 import posix
@@ -20,15 +21,19 @@ if not os.path.isdir(fifo_dir):
     print("Fifo directory %s does not exist!" % fifo_dir, file=sys.stderr)
     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(3)
 
+inBytes = sys.stdin.read().encode("UTF-8")
+inB64 = base64.b64encode(inBytes)
+
 for i in range(0, 10):
     fifo = -1
     try:
         fifo = posix.open(fifo_path, posix.O_WRONLY | posix.O_NONBLOCK)
-        posix.write(fifo, sys.stdin.read().encode())
+        posix.write(fifo, inB64)
         sys.exit(0)
     except OSError as e:
         if e.errno == errno.ENXIO: