View | Details | Raw Unified | Return to bug 45187
Collapse All | Expand All

(-)server/request.c (+5 lines)
Lines 1174-1179 Link Here
1174
                              "component of the path", r->uri, r->filename);
1174
                              "component of the path", r->uri, r->filename);
1175
                return r->status = HTTP_FORBIDDEN;
1175
                return r->status = HTTP_FORBIDDEN;
1176
            }
1176
            }
1177
            else if (APR_STATUS_IS_ENAMETOOLONG(rv)) {
1178
                ap_log_rerror(APLOG_MARK, APLOG_INFO, 0, r, APLOGNO(10234)
1179
                              "filename %s too long, returning 404", r->filename);
1180
                return r->status = HTTP_NOT_FOUND;
1181
            }
1177
            else if ((rv != APR_SUCCESS && rv != APR_INCOMPLETE)
1182
            else if ((rv != APR_SUCCESS && rv != APR_INCOMPLETE)
1178
                     || !(thisinfo.valid & APR_FINFO_TYPE)) {
1183
                     || !(thisinfo.valid & APR_FINFO_TYPE)) {
1179
                /* If we hit ENOTDIR, we must have over-optimized, deny
1184
                /* If we hit ENOTDIR, we must have over-optimized, deny
(-)srclib/apr/file_io/unix/filestat.c (+8 lines)
Lines 288-293 Link Here
288
    struct_stat info;
288
    struct_stat info;
289
    int srv;
289
    int srv;
290
290
291
    /* Catch fname length == MAX_PATH since stat(2) fails
292
     * with ENOENT.  We would rather indicate length error than
293
     * 'not found'
294
     */
295
    if (strlen(fname) >= APR_PATH_MAX) {
296
        return APR_ENAMETOOLONG;
297
    }
298
291
    if (wanted & APR_FINFO_LINK)
299
    if (wanted & APR_FINFO_LINK)
292
        srv = lstat(fname, &info);
300
        srv = lstat(fname, &info);
293
    else
301
    else

Return to bug 45187