~ubuntu-branches/ubuntu/trusty/curl/trusty-updates

« back to all changes in this revision

Viewing changes to .pc/CVE-2014-3707.patch/src/tool_setup.h

  • Committer: Package Import Robot
  • Author(s): Marc Deslauriers
  • Date: 2014-11-06 10:53:58 UTC
  • Revision ID: package-import@ubuntu.com-20141106105358-e90s20tv3eobuukd
Tags: 7.35.0-1ubuntu2.2
* SECURITY UPDATE: sensitive data disclosure via duphandle read out of
  bounds
  - debian/patches/CVE-2014-3707.patch: properly copy memory aread in
    lib/formdata.c, lib/strdup.{c,h}, lib/url.c, lib/urldata.h,
    src/Makefile.inc, src/tool_setup.h, src/tool_strdup.{c,h}.
  - CVE-2014-3707

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#ifndef HEADER_CURL_TOOL_SETUP_H
 
2
#define HEADER_CURL_TOOL_SETUP_H
 
3
/***************************************************************************
 
4
 *                                  _   _ ____  _
 
5
 *  Project                     ___| | | |  _ \| |
 
6
 *                             / __| | | | |_) | |
 
7
 *                            | (__| |_| |  _ <| |___
 
8
 *                             \___|\___/|_| \_\_____|
 
9
 *
 
10
 * Copyright (C) 1998 - 2012, Daniel Stenberg, <daniel@haxx.se>, et al.
 
11
 *
 
12
 * This software is licensed as described in the file COPYING, which
 
13
 * you should have received as part of this distribution. The terms
 
14
 * are also available at http://curl.haxx.se/docs/copyright.html.
 
15
 *
 
16
 * You may opt to use, copy, modify, merge, publish, distribute and/or sell
 
17
 * copies of the Software, and permit persons to whom the Software is
 
18
 * furnished to do so, under the terms of the COPYING file.
 
19
 *
 
20
 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
 
21
 * KIND, either express or implied.
 
22
 *
 
23
 ***************************************************************************/
 
24
 
 
25
#define CURL_NO_OLDIES
 
26
 
 
27
/*
 
28
 * curl_setup.h may define preprocessor macros such as _FILE_OFFSET_BITS and
 
29
 * _LARGE_FILES in order to support files larger than 2 GB. On platforms
 
30
 * where this happens it is mandatory that these macros are defined before
 
31
 * any system header file is included, otherwise file handling function
 
32
 * prototypes will be misdeclared and curl tool may not build properly;
 
33
 * therefore we must include curl_setup.h before curl.h when building curl.
 
34
 */
 
35
 
 
36
#include "curl_setup.h" /* from the lib directory */
 
37
 
 
38
/*
 
39
 * curl tool certainly uses libcurl's external interface.
 
40
 */
 
41
 
 
42
#include <curl/curl.h> /* external interface */
 
43
 
 
44
/*
 
45
 * Platform specific stuff.
 
46
 */
 
47
 
 
48
#if defined(macintosh) && defined(__MRC__)
 
49
#  define main(x,y) curl_main(x,y)
 
50
#endif
 
51
 
 
52
#ifdef TPF
 
53
#  undef select
 
54
   /* change which select is used for the curl command line tool */
 
55
#  define select(a,b,c,d,e) tpf_select_bsd(a,b,c,d,e)
 
56
   /* and turn off the progress meter */
 
57
#  define CONF_DEFAULT (0|CONF_NOPROGRESS)
 
58
#endif
 
59
 
 
60
#ifndef OS
 
61
#  define OS "unknown"
 
62
#endif
 
63
 
 
64
#ifndef UNPRINTABLE_CHAR
 
65
   /* define what to use for unprintable characters */
 
66
#  define UNPRINTABLE_CHAR '.'
 
67
#endif
 
68
 
 
69
#ifndef HAVE_STRDUP
 
70
#  include "strdup.h"
 
71
#  define strdup(ptr) curlx_strdup(ptr)
 
72
#endif
 
73
 
 
74
#endif /* HEADER_CURL_TOOL_SETUP_H */
 
75