Lines Matching refs:fp
49 freopen(const char *file, const char *mode, FILE *fp)
55 (void) fclose(fp);
62 FLOCKFILE(fp);
72 if (fp->_flags == 0) {
73 fp->_flags = __SEOF; /* hold on to it */
78 if (fp->_flags & __SWR)
79 (void) __sflush(fp);
81 isopen = fp->_close != NULL;
82 if ((wantfd = fp->_file) < 0 && isopen) {
83 (void) (*fp->_close)(fp->_cookie);
93 (void) (*fp->_close)(fp->_cookie);
101 * Finish closing fp. Even if the open succeeded above, we cannot
102 * keep fp->_base: it may be the wrong size. This loses the effect
106 (void) (*fp->_close)(fp->_cookie);
107 if (fp->_flags & __SMBF)
108 free((char *)fp->_bf._base);
109 fp->_w = 0;
110 fp->_r = 0;
111 fp->_p = NULL;
112 fp->_bf._base = NULL;
113 fp->_bf._size = 0;
114 fp->_lbfsize = 0;
115 if (HASUB(fp))
116 FREEUB(fp);
117 _UB(fp)._size = 0;
118 WCIO_FREE(fp);
119 if (HASLB(fp))
120 FREELB(fp);
121 fp->_lb._size = 0;
124 fp->_flags = 0; /* set it free */
125 FUNLOCKFILE(fp);
142 fp->_flags = flags;
143 fp->_file = f;
144 fp->_cookie = fp;
145 fp->_read = __sread;
146 fp->_write = __swrite;
147 fp->_seek = __sseek;
148 fp->_close = __sclose;
159 (void) __sseek((void *)fp, (fpos_t)0, SEEK_END);
160 FUNLOCKFILE(fp);
161 return (fp);