aboutsummaryrefslogtreecommitdiff
path: root/tst/kb.c
diff options
context:
space:
mode:
authorbeber <beber>2006-01-12 02:53:35 +0000
committerbeber <beber>2006-01-12 02:53:35 +0000
commitae70eb8b8f4e47a062422144bdb1549d03d5e149 (patch)
tree99506d85ab568bb844f0d9257175bc69cdd9862a /tst/kb.c
parentcomment and unused code (diff)
downloadespik-ae70eb8b8f4e47a062422144bdb1549d03d5e149.tar.xz
Missing files for git-import
Diffstat (limited to 'tst/kb.c')
-rw-r--r--tst/kb.c118
1 files changed, 118 insertions, 0 deletions
diff --git a/tst/kb.c b/tst/kb.c
new file mode 100644
index 0000000..45e6dc5
--- /dev/null
+++ b/tst/kb.c
@@ -0,0 +1,118 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <errno.h>
+#include <string.h>
+
+/* EFL Stuff */
+#include <Ecore.h>
+
+#define __UNUSED__ __attribute__((unused))
+
+char *_priv (char *msg, char *var)
+{
+ char *out;
+
+ printf ("> _priv\n");
+
+ out = calloc (sizeof (char), strlen ("PRIV") + 1 /* space */
+ + strlen (var) + 2 /* space: */
+ + strlen (msg) + 3 /* \r\n\0 */
+ );
+
+ sprintf (out, "PRIV %s :%s\r\n", var, msg);
+ printf ("< _priv:%s\n******\n", out);
+
+ return (out);
+}
+
+int del_backslash (char *msg)
+{
+ int i, count;
+
+ for (i = 0, count = 0; msg[i]; i++)
+ {
+ if (msg[i] == '\n')
+ {
+ msg[i] = '\0';
+ count++;
+ }
+ }
+
+ return (count);
+}
+
+
+int _kb_get (void __UNUSED__ * data, Ecore_Fd_Handler * fd_handler)
+{
+ char *kb;
+ char *tmp;
+ int count;
+
+ printf ("> _kb_get\n");
+
+ printf ("calloc\n");
+ kb = calloc (sizeof (char), 200);
+ if (kb == NULL)
+ {
+ fprintf (stderr, "fuck\n");
+ exit (-1);
+ }
+
+ fflush (stdin); /* Uh ? */
+ fflush (stdout); /* Uh ? */
+
+ do
+ {
+ printf ("memset\n");
+ memset (kb, 0, 200);
+ printf (">read\n");
+ count = read (ecore_main_fd_handler_fd_get (fd_handler), kb, 198);
+ printf ("<read(%d)\n", count);
+
+ if (count > 0)
+ {
+ del_backslash (kb);
+
+ tmp = _priv (kb, "test");
+
+ /* for (i=0; i < strlen(tmp) ; i++)
+ * {
+ * printf ("%d\t: %c\t%c\n", i, kb[i], tmp[i]);
+ * }
+ */
+
+ printf ("%s\n", tmp);
+ }
+ }
+ while (count >= 198);
+
+ if (count == -1)
+ perror ("read");
+
+ if (count == 0)
+ {
+ printf ("EOF, quit\n");
+ ecore_main_loop_quit ();
+ }
+
+ printf ("< _kb_get\n");
+
+ free (kb);
+ free (tmp);
+
+ return (1);
+}
+
+int main ()
+{
+ Ecore_Fd_Handler *fd_kb;
+
+ ecore_init ();
+
+ fd_kb = ecore_main_fd_handler_add (STDIN_FILENO, ECORE_FD_READ, _kb_get, NULL, NULL, NULL);
+
+ ecore_main_loop_begin ();
+
+ exit (0);
+
+}