X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=src%2Fgacela_server.scm;h=7052f14ec4a957bff12a2f7972349d9c9c5f019c;hb=03769b3fcb377d93308521c0c6541e199f223a43;hp=5278cbaa253e7149419d12f5552aae1caff78106;hpb=a9ac7797c7eca236ee5b3114d9a6ab859c00b0b3;p=gacela.git diff --git a/src/gacela_server.scm b/src/gacela_server.scm index 5278cba..7052f14 100644 --- a/src/gacela_server.scm +++ b/src/gacela_server.scm @@ -57,8 +57,8 @@ (set! eval-from-clients (lambda () - (cond (pipes - (eval-from-client (car pipes) (cdr pipes)))) + (cond (server-pipes + (eval-from-client (car server-pipes) (cdr server-pipes)))) (for-each (lambda (cli) (eval-from-client (car cli) (car cli))) clients))) @@ -79,14 +79,21 @@ (cond ((eof-object? exp) (close rec-channel)) (else - (format #t "Server1: ~a~%" exp) - (format #t "Server2: ~a~%" (primitive-eval exp)) - (format send-channel "~a" (primitive-eval exp)) - (force-output send-channel))))) + (write (format #f "~a" (eval-string exp)) send-channel))))) (lambda (key . args) - (format #t "ERROR") (let ((fmt (string-concatenate (list (cadr args) "~%"))) (params (caddr args))) - (if params - (apply format (cons send-channel (cons fmt params))) - (format send-channel fmt)))))))) + (write + (if params + (apply format (cons #f (cons fmt params))) + (format #f fmt)) + send-channel)))) + (force-output send-channel)))) + + +(define connect-to-server #f) + +(define (connect-to-server hostname port) + (let ((s (socket PF_INET SOCK_STREAM 0))) + (connect s AF_INET (car (hostent:addr-list (gethost hostname))) port) + s))