#define _DEFAULT_SOURCE #include #include #include #include "target.h" #include "layout.h" #include "diagnostics.h" static void fixture(PlaybackJson *json,int kind){ int server=socket(AF_INET,SOCK_STREAM,0);assert(server>=0); struct sockaddr_in address={.sin_family=AF_INET,.sin_addr={htonl(INADDR_LOOPBACK)}}; assert(bind(server,(void*)&address,sizeof(address))==0 && listen(server,1)==0); socklen_t length=sizeof(address);assert(getsockname(server,(void*)&address,&length)==0); TargetConfig config=target;config.port=ntohs(address.sin_port);if(kind==1)strcpy(config.token,"fixture-token"); pid_t child=fork();assert(child>=0); if(!child){ int fd=accept(server,NULL,NULL);if(fd<0)_exit(2);char request[512]={0};size_t used=0; while(used+1