summaryrefslogtreecommitdiff
path: root/test/interactive-helper/mthdcat.cc
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2011-08-17 18:14:27 +0200
committerMichael Vogt <michael.vogt@ubuntu.com>2011-08-17 18:14:27 +0200
commit178dd062eeaa1d7e56770455e005dc27aa71f026 (patch)
tree0dd7241e4fa9a06090d5cd8da4c7de87065ba08b /test/interactive-helper/mthdcat.cc
parentec78b277382e27509a6dec91af4a7a524a422e0f (diff)
parentfe268128119bc73403003a29b66c927b9c36690d (diff)
merged lp:~donkult/apt/sid
Diffstat (limited to 'test/interactive-helper/mthdcat.cc')
-rw-r--r--test/interactive-helper/mthdcat.cc20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/interactive-helper/mthdcat.cc b/test/interactive-helper/mthdcat.cc
new file mode 100644
index 000000000..25d09a3f5
--- /dev/null
+++ b/test/interactive-helper/mthdcat.cc
@@ -0,0 +1,20 @@
+/* Usage, mthdcat < cmds | methods/mthd
+ All this does is cat a file into the method without closing the FD when
+ the file ends */
+
+#include <unistd.h>
+
+int main()
+{
+ char Buffer[4096];
+
+ while (1)
+ {
+ int Res = read(STDIN_FILENO,Buffer,sizeof(Buffer));
+ if (Res <= 0)
+ while (1) sleep(100);
+ if (write(STDOUT_FILENO,Buffer,Res) != Res)
+ break;
+ }
+ return 0;
+}