scsh-checkins
[Top] [All Lists]

[Scsh-checkins] CVS: scsh-0.6/scsh network.scm,1.23,1.24 network1.c,1.22

To: scsh-checkins@lists.sourceforge.net
Subject: [Scsh-checkins] CVS: scsh-0.6/scsh network.scm,1.23,1.24 network1.c,1.22,1.23
From: Martin Gasbichler <mainzelm@users.sourceforge.net>
Date: Mon Sep 17 11:24:02 2001
List-id: <scsh-checkins.lists.sourceforge.net>
Sender: scsh-checkins-admin@lists.sourceforge.net
Update of /cvsroot/scsh/scsh-0.6/scsh
In directory usw-pr-cvs1:/tmp/cvs-serv7916

Modified Files:
        network.scm network1.c 
Log Message:
Check string-length of bind-socket in Scheme.


Index: network.scm
===================================================================
RCS file: /cvsroot/scsh/scsh-0.6/scsh/network.scm,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -r1.23 -r1.24
*** network.scm 2001/09/13 07:59:40     1.23
--- network.scm 2001/09/17 18:23:30     1.24
***************
*** 200,210 ****
        (else
         (let ((family (socket:family sock)))
!          (if (not (= family (socket-address:family name)))
!              (error 
!               "bind-socket: trying to bind incompatible address to socket ~s"
!               name)
!              (%bind (socket->fdes sock)
!                     family
!                     (socket-address:address name)))))))
  
  (import-os-error-syscall %bind (sockfd family name) "scheme_bind")
--- 200,214 ----
        (else
         (let ((family (socket:family sock)))
!          (cond ((not (= family (socket-address:family name)))
!                 (error 
!                  "bind-socket: trying to bind incompatible address to socket 
~s"
!                  name))
!                ((and (= family address-family/unix)
!                      (> (string-length name) 107))
!                 (error "bind-socket: path too long" name))
!                (else
!                 %bind (socket->fdes sock)
!                 family
!                 (socket-address:address name)))))))
  
  (import-os-error-syscall %bind (sockfd family name) "scheme_bind")

Index: network1.c
===================================================================
RCS file: /cvsroot/scsh/scsh-0.6/scsh/network1.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -r1.22 -r1.23
*** network1.c  2001/08/08 11:54:04     1.22
--- network1.c  2001/09/17 18:23:30     1.23
***************
*** 46,51 ****
  
        name.sun_family=AF_UNIX;        
!       if (scheme_length>=(108-1)) /* save space for \0 */
!         return(-1);  // TODO: check this in scheme !
        strncpy(name.sun_path,
                s48_extract_string(scheme_name),
--- 46,50 ----
  
        name.sun_family=AF_UNIX;        
! 
        strncpy(name.sun_path,
                s48_extract_string(scheme_name),



<Prev in Thread] Current Thread [Next in Thread>
  • [Scsh-checkins] CVS: scsh-0.6/scsh network.scm,1.23,1.24 network1.c,1.22,1.23, Martin Gasbichler <=