13e12c5d1SDavid du Colombier /* 23e12c5d1SDavid du Colombier * pANS stdio -- sopenw 33e12c5d1SDavid du Colombier */ 43e12c5d1SDavid du Colombier #include "iolib.h" sopenw(void)53e12c5d1SDavid du ColombierFILE *sopenw(void){ 63e12c5d1SDavid du Colombier FILE *f; 7*7dd7cddfSDavid du Colombier qlock(&_stdiolk); 83e12c5d1SDavid du Colombier for(f=_IO_stream;f!=&_IO_stream[FOPEN_MAX];f++) if(f->state==CLOSED) break; 9*7dd7cddfSDavid du Colombier if(f==&_IO_stream[FOPEN_MAX]) { 10*7dd7cddfSDavid du Colombier qunlock(&_stdiolk); 11*7dd7cddfSDavid du Colombier return NULL; 12*7dd7cddfSDavid du Colombier } 133e12c5d1SDavid du Colombier f->buf=f->rp=f->wp=0; 143e12c5d1SDavid du Colombier f->state=OPEN; 153e12c5d1SDavid du Colombier f->flags=STRING; 163e12c5d1SDavid du Colombier f->fd=-1; 17*7dd7cddfSDavid du Colombier qunlock(&_stdiolk); 183e12c5d1SDavid du Colombier return f; 193e12c5d1SDavid du Colombier } 20