Index: trunk/Ohana/src/kapa2/src/CheckPipe.c
===================================================================
--- trunk/Ohana/src/kapa2/src/CheckPipe.c	(revision 13484)
+++ trunk/Ohana/src/kapa2/src/CheckPipe.c	(revision 13899)
@@ -7,6 +7,11 @@
 
 // we can supply a port here, with only small changes
-void InitPipe () {
-  InitSocket = KapaServerInit (&Address);
+void InitPipe (char *namedSocket) {
+
+  if (namedSocket == NULL) {
+    InitSocket = KapaServerInit (&Address);
+  } else {
+    sock = KapaWaitNamedSocket (namedSocket);
+  }
   return;
 }
Index: trunk/Ohana/src/kapa2/src/Layout.c
===================================================================
--- trunk/Ohana/src/kapa2/src/Layout.c	(revision 13484)
+++ trunk/Ohana/src/kapa2/src/Layout.c	(revision 13899)
@@ -6,6 +6,15 @@
   int N;
   Section *section;
+  char *namedSocket;
+  
+  if ((N = get_argument (argc, argv, "-socket"))) { 
+    remove_argument (N, &argc, argv);
+    namedSocket = argv[N];
+    remove_argument (N, &argc, argv);
+  }
 
-  InitPipe();
+  // if we specify a named socket, wait until we are contacted
+  // otherwise, open an INET sock and check occasionally for requests
+  InitPipe (namedSocket);
 
   ACTIVE_CURSOR = FALSE;
