]> git.jsancho.org Git - gacela.git/commitdiff
(no commit message)
authorjsancho <devnull@localhost>
Wed, 13 Jul 2011 08:02:52 +0000 (08:02 +0000)
committerjsancho <devnull@localhost>
Wed, 13 Jul 2011 08:02:52 +0000 (08:02 +0000)
src/gacela.c
src/gacela_server.scm

index 737766aa3cc8818c94b760826d7ff2e37b8b2136..dc5795ae69e52a541220a53645ccd1a64ce3a992 100644 (file)
@@ -133,10 +133,10 @@ init_gacela_client ()
 void
 gacela_client (char *hostname, int port)
 {
-  int sockfd;
+  int sockfd, n;
   struct hostent *server;
   struct sockaddr_in serv_addr;
-
+  char buffer[256];
   char *line;
   char *history_path;
 
@@ -160,12 +160,25 @@ gacela_client (char *hostname, int port)
     if (!line) break;
     if (line && *line)
       {
-       printf ("%s\n", line);
        add_history (line);
+       write (sockfd, "(", 1);
+       n = write (sockfd, line, strlen (line));
+       write (sockfd, ")", 1);
+       if (n < 0)
+         error("ERROR writing to socket");
+
+       bzero (buffer, 256);
+       n = 0;
+       while (n == 0)
+         n = read (sockfd, buffer, 255);
+       if (n < 0)
+         error("ERROR reading from socket");
+       printf ("%s\n", buffer);
       }
     free (line);
   }
 
+  close (sockfd);
   write_history (history_path);
   free (history_path);
 }
index ef7b24e881114e973b0fd88ac896129e46b107ed..978ea8c56388e5523301f219606045dceb4c3eb5 100644 (file)
               (cond ((char-ready? sock)
                      (catch #t
                             (lambda ()
-                              (let ((exp (read sock)))
+                              (let ((exp (car (read sock))))
+                                (format #t "~a~%" exp)
                                 (cond ((eof-object? exp)
                                        (close sock))
                                       (else
-                                       (format sock "~a~%" (primitive-eval exp))))))
+                                       (format #t "~a~%" (primitive-eval exp))
+                                       (format sock "~a" (primitive-eval exp))))))
                             (lambda (key . args)
                               (let ((fmt (string-concatenate (list (cadr args) "~%")))
                                     (params (caddr args)))