Lines Matching refs:new_file

23 static apr_status_t file_dup(apr_file_t **new_file, 
33 if ((*new_file) == NULL) {
34 /* We can't dup2 unless we have a valid new_file */
38 if (!((*new_file)->flags & (APR_FOPEN_NOCLEANUP|APR_INHERIT)))
40 rv = dup3(old_file->filedes, (*new_file)->filedes, flags);
42 rv = dup2(old_file->filedes, (*new_file)->filedes);
43 if (!((*new_file)->flags & (APR_FOPEN_NOCLEANUP|APR_INHERIT))) {
49 if ((flags = fcntl((*new_file)->filedes, F_GETFD)) == -1)
53 if (fcntl((*new_file)->filedes, F_SETFD, flags) == -1)
66 (*new_file) = (apr_file_t *)apr_pcalloc(p, sizeof(apr_file_t));
67 (*new_file)->pool = p;
68 (*new_file)->filedes = rv;
71 (*new_file)->fname = apr_pstrdup(p, old_file->fname);
72 (*new_file)->buffered = old_file->buffered;
79 if ((*new_file)->buffered && !(*new_file)->thlock && old_file->thlock) {
80 apr_thread_mutex_create(&((*new_file)->thlock),
87 if ((*new_file)->buffered && !(*new_file)->buffer) {
88 (*new_file)->buffer = apr_palloc(p, old_file->bufsize);
89 (*new_file)->bufsize = old_file->bufsize;
93 (*new_file)->blocking = old_file->blocking;
96 (*new_file)->ungetchar = old_file->ungetchar;
113 (*new_file)->flags = old_file->flags
116 apr_pool_cleanup_register((*new_file)->pool, (void *)(*new_file),
123 (*new_file)->pollset = NULL;
128 APR_DECLARE(apr_status_t) apr_file_dup(apr_file_t **new_file,
131 return file_dup(new_file, old_file, p, 1);
134 APR_DECLARE(apr_status_t) apr_file_dup2(apr_file_t *new_file,
137 return file_dup(&new_file, old_file, p, 2);
140 APR_DECLARE(apr_status_t) apr_file_setaside(apr_file_t **new_file,
144 *new_file = (apr_file_t *)apr_pmemdup(p, old_file, sizeof(apr_file_t));
145 (*new_file)->pool = p;
147 (*new_file)->buffer = apr_palloc(p, old_file->bufsize);
148 (*new_file)->bufsize = old_file->bufsize;
150 memcpy((*new_file)->buffer, old_file->buffer, old_file->bufpos);
153 memcpy((*new_file)->buffer, old_file->buffer, old_file->dataRead);
157 apr_thread_mutex_create(&((*new_file)->thlock),
164 (*new_file)->fname = apr_pstrdup(p, old_file->fname);
167 apr_pool_cleanup_register(p, (void *)(*new_file),
169 ((*new_file)->flags & APR_INHERIT)
178 (*new_file)->pollset = NULL;