Changeset 1785:c55a0d1f63fe in roaraudio


Ignore:
Timestamp:
05/19/09 20:51:59 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

test for setenv() and putenv()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • roarclients/roarmonhttp.c

    r1783 r1785  
    2424 
    2525#include <roaraudio.h> 
     26 
     27#if defined(ROAR_HAVE_SETENV) || defined(ROAR_HAVE_PUTENV) 
     28#define _CAN_SET_ENV 
     29#endif 
    2630 
    2731#define BUFSIZE 1024 
     
    133137} 
    134138 
    135  
     139#ifdef _CAN_SET_ENV 
    136140int parse_http (int * gopher) { 
    137141 char buf[1024]; 
     
    185189 fflush(stdout); 
    186190 
     191#ifdef ROAR_HAVE_SETENV 
    187192 setenv("QUERY_STRING", qs, 1); 
     193#else 
     194 // TODO: does this leak memory? 
     195 if ( (str = malloc(strlen(qs) + strlen("QUERY_STRING=") + 1)) == NULL ) { 
     196  return -1; 
     197 } 
     198 
     199 sprintf(str, "QUERY_STRING=%s", qs); 
     200 
     201 putenv(str); 
     202#endif 
    188203 
    189204 return dir; 
    190205} 
     206#endif 
    191207 
    192208int main (int argc, char * argv[]) { 
     
    209225 if ( argc > 1 ) 
    210226  if ( ! strcmp(argv[1], "--inetd") ) 
     227#ifdef _CAN_SET_ENV 
    211228   if ( (dir = parse_http(&gopher)) == -1 ) 
    212229    return 1; 
     230#else 
     231   return 1; 
     232#endif 
    213233 
    214234 c = strtok_r(getenv("QUERY_STRING"), "&", &sp0); 
Note: See TracChangeset for help on using the changeset viewer.