Changeset 754:c9679895bf19 in roaraudio


Ignore:
Timestamp:
09/05/08 04:05:37 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

let roar_socket_send_fh() and roar_socket_recv_fh() support (virtally) zero length packets

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroar/socket.c

    r753 r754  
    218218 char             cmptr_buf[_SCMR_CONTROLLEN]; 
    219219 struct cmsghdr * cmptr = (struct cmsghdr *) cmptr_buf; 
    220  
    221  if ( sock < 0 || fh < 0 || len == 0 ) 
    222   return -1; 
     220 char             localmes[1] = {0}; 
     221 
     222 if ( sock < 0 || fh < 0 ) 
     223  return -1; 
     224 
     225 if ( len == 0 ) { 
     226  len = 1; 
     227  mes = localmes; 
     228 } 
     229 
     230 memset(cmptr, 0, _SCMR_CONTROLLEN); 
    223231 
    224232 iov[0].iov_base = mes; 
     
    244252 char             cmptr_buf[_SCMR_CONTROLLEN]; 
    245253 struct cmsghdr * cmptr = (struct cmsghdr *) cmptr_buf; 
     254 char             localmes[1]; 
     255 size_t           locallen[1] = {1}; 
    246256 
    247257 if ( sock < 0 ) 
    248258  return -1; 
     259 
     260 if ( len == NULL ) { 
     261  len = locallen; 
     262  mes = localmes; 
     263 } 
    249264 
    250265 iov[0].iov_base = mes; 
Note: See TracChangeset for help on using the changeset viewer.