add lefty, dotty, lneato to graphviz2 tree
authorellson <devnull@localhost>
Thu, 6 Jan 2005 15:01:43 +0000 (15:01 +0000)
committerellson <devnull@localhost>
Thu, 6 Jan 2005 15:01:43 +0000 (15:01 +0000)
cmd/lefty/cs2l/Makefile.am [new file with mode: 0644]
cmd/lefty/cs2l/cs2l.c [new file with mode: 0644]

diff --git a/cmd/lefty/cs2l/Makefile.am b/cmd/lefty/cs2l/Makefile.am
new file mode 100644 (file)
index 0000000..6b3fc25
--- /dev/null
@@ -0,0 +1,10 @@
+## Process this file with automake to produce Makefile.in
+
+AM_CPPFLAGS = -I${top_srcdir}/lefty
+
+noinst_HEADERS = cs2l.h
+# noinst_LTLIBRARIES = libcs2l.la
+
+# libcs2l_la_SOURCES = cs2l.c
+
+EXTRA_DIST = cs2l.c
diff --git a/cmd/lefty/cs2l/cs2l.c b/cmd/lefty/cs2l/cs2l.c
new file mode 100644 (file)
index 0000000..d5c803a
--- /dev/null
@@ -0,0 +1,67 @@
+/* $Id$ $Revision$ */
+/* vim:set shiftwidth=4 ts=8: */
+
+/**********************************************************
+*      This software is part of the graphviz package      *
+*                http://www.graphviz.org/                 *
+*                                                         *
+*            Copyright (c) 1994-2004 AT&T Corp.           *
+*                and is licensed under the                *
+*            Common Public License, Version 1.0           *
+*                      by AT&T Corp.                      *
+*                                                         *
+*        Information and Software Systems Research        *
+*              AT&T Research, Florham Park NJ             *
+**********************************************************/
+
+
+#include <ast.h>
+#include <cs.h>
+#include <msg.h>
+#include "common.h"
+#include "code.h"
+#include "mem.h"
+#include "tbl.h"
+#include "exec.h"
+#include "cs2l.h"
+
+int C2Lopen(char *name, char *mode, FILE ** ifp, FILE ** ofp)
+{
+    int fd;
+
+    if ((fd = csopen(name, CS_OPEN_READ)) == -1)
+       return -1;
+    fcntl(fd, F_SETFD, FD_CLOEXEC);
+    *ifp = fdopen(fd, "r"), *ofp = fdopen(fd, "a+");
+    return 0;
+}
+
+/* LEFTY builtin */
+int C2Lreadcsmessage(int argc, lvar_t * argv)
+{
+
+#if 0                          /* not finished yet */
+    io_t *p;
+    int ioi, n;
+    Msg_call_t msg;
+    Tobj to;
+    int tm;
+
+    ioi = Tgetnumber(argv[0].o);
+    if (ioi < 0 || ioi >= ion)
+       return L_FAILURE;
+
+    p = &iop[ioi];
+    fseek(p->ofp, 0L, 1);
+    if ((n = msgrecv(fileno(p->ifp), &msg)) <= 0)
+       return L_FAILURE;
+    to = Ttable(6);
+    tm = Mpushmark(to);
+    Tinss(to, "id", Tinteger(MSG_CHANNEL_USR(msg.channel)));
+    Tinss(to, "pid", Tinteger(MSG_CHANNEL_SYS(msg.channel)));
+    rtno = to;
+    Mpopmark(tm);
+#endif
+
+    return L_SUCCESS;
+}