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

(-)apache_1.3.29/src/os/cygwin/Makefile.tmpl (-1 / +12 lines)
Lines 3-9 Link Here
3
INCLUDES=$(INCLUDES1) $(INCLUDES0) $(EXTRA_INCLUDES)
3
INCLUDES=$(INCLUDES1) $(INCLUDES0) $(EXTRA_INCLUDES)
4
LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS)
4
LDFLAGS=$(LDFLAGS1) $(EXTRA_LDFLAGS)
5
5
6
OBJS=	os.o os-inline.o
6
OBJS=	os.o os-inline.o util_cygwin.o
7
7
8
LIB=	libos.a
8
LIB=	libos.a
9
9
Lines 37-42 Link Here
37
37
38
$(OBJS): Makefile
38
$(OBJS): Makefile
39
39
40
$(INCDIR)/os.h: os.h
41
	cp $< $@
42
	
43
$(INCDIR)/os-inline.c: os-inline.c
44
	cp $< $@
45
40
# DO NOT REMOVE
46
# DO NOT REMOVE
41
os-inline.o: os-inline.c $(INCDIR)/ap_config.h \
47
os-inline.o: os-inline.c $(INCDIR)/ap_config.h \
42
 $(INCDIR)/ap_mmn.h $(INCDIR)/ap_config_auto.h \
48
 $(INCDIR)/ap_mmn.h $(INCDIR)/ap_config_auto.h \
Lines 44-46 Link Here
44
os.o: os.c $(INCDIR)/ap_config.h $(INCDIR)/ap_mmn.h \
50
os.o: os.c $(INCDIR)/ap_config.h $(INCDIR)/ap_mmn.h \
45
 $(INCDIR)/ap_config_auto.h $(OSDIR)/os.h \
51
 $(INCDIR)/ap_config_auto.h $(OSDIR)/os.h \
46
 $(INCDIR)/ap_ctype.h $(INCDIR)/hsregex.h os.h
52
 $(INCDIR)/ap_ctype.h $(INCDIR)/hsregex.h os.h
53
util_cygwin.o: util_cygwin.c $(INCDIR)/httpd.h $(INCDIR)/ap_config.h \
54
 $(INCDIR)/ap_mmn.h $(INCDIR)/ap_config_auto.h \
55
 $(INCDIR)/os.h $(INCDIR)/os-inline.c $(INCDIR)/ap_ctype.h \
56
 $(INCDIR)/hsregex.h $(INCDIR)/ap_alloc.h $(INCDIR)/buff.h \
57
 $(INCDIR)/ap.h $(INCDIR)/util_uri.h $(INCDIR)/http_log.h
(-)apache_1.3.29/src/os/cygwin/os.h (+4 lines)
Lines 88-93 Link Here
88
#define PLATFORM "Cygwin"
88
#define PLATFORM "Cygwin"
89
#endif
89
#endif
90
90
91
/* define that we implement our own ap_os_canonical_filename() to 
92
 * circumvent backslash security holes in cygwin path processing. */
93
#define HAVE_CANONICAL_FILENAME
94
91
/* 
95
/* 
92
 * Define winsock.h and winsock2.h stuff taken from Win32 API in case we  
96
 * Define winsock.h and winsock2.h stuff taken from Win32 API in case we  
93
 * want to do socket communication in Win32 native way rather then using 
97
 * want to do socket communication in Win32 native way rather then using 
(-)apache_1.3.29/src/os/cygwin/util_cygwin.c (+81 lines)
Line 0 Link Here
1
/* ====================================================================
2
 * The Apache Software License, Version 1.1
3
 *
4
 * Copyright (c) 2000-2003 The Apache Software Foundation.  All rights
5
 * reserved.
6
 *
7
 * Redistribution and use in source and binary forms, with or without
8
 * modification, are permitted provided that the following conditions
9
 * are met:
10
 *
11
 * 1. Redistributions of source code must retain the above copyright
12
 *    notice, this list of conditions and the following disclaimer.
13
 *
14
 * 2. Redistributions in binary form must reproduce the above copyright
15
 *    notice, this list of conditions and the following disclaimer in
16
 *    the documentation and/or other materials provided with the
17
 *    distribution.
18
 *
19
 * 3. The end-user documentation included with the redistribution,
20
 *    if any, must include the following acknowledgment:
21
 *       "This product includes software developed by the
22
 *        Apache Software Foundation (http://www.apache.org/)."
23
 *    Alternately, this acknowledgment may appear in the software itself,
24
 *    if and wherever such third-party acknowledgments normally appear.
25
 *
26
 * 4. The names "Apache" and "Apache Software Foundation" must
27
 *    not be used to endorse or promote products derived from this
28
 *    software without prior written permission. For written
29
 *    permission, please contact apache@apache.org.
30
 *
31
 * 5. Products derived from this software may not be called "Apache",
32
 *    nor may "Apache" appear in their name, without prior written
33
 *    permission of the Apache Software Foundation.
34
 *
35
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
36
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
37
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
38
 * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
39
 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
40
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
41
 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
42
 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
43
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
44
 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
45
 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
46
 * SUCH DAMAGE.
47
 * ====================================================================
48
 *
49
 * This software consists of voluntary contributions made by many
50
 * individuals on behalf of the Apache Software Foundation.  For more
51
 * information on the Apache Software Foundation, please see
52
 * <http://www.apache.org/>.
53
 *
54
 * Portions of this software are based upon public domain software
55
 * originally written at the National Center for Supercomputing Applications,
56
 * University of Illinois, Urbana-Champaign.
57
 */
58
59
#include <os.h>
60
#include "httpd.h"
61
#include "http_log.h"
62
63
64
API_EXPORT(char *) ap_os_canonical_filename(pool *pPool, const char *szFile)
65
{
66
    char *buf;
67
    char buf2[MAX_STRING_LEN];
68
    int rc, len; 
69
    char *pos;
70
    
71
    len = strlen(szFile);
72
    buf = ap_pstrndup(pPool, szFile, len);
73
74
    /* Switch backslashes to forward */
75
    for (pos=buf; *pos; pos++)
76
        if (*pos == '\\')
77
            *pos = '/';
78
    
79
    return ap_pstrdup(pPool, buf);
80
}
81

Return to bug 26152