~ubuntu-branches/debian/squeeze/ntp/squeeze-201010051545

« back to all changes in this revision

Viewing changes to libparse/clk_meinberg.c

  • Committer: Bazaar Package Importer
  • Author(s): Kurt Roeckx
  • Date: 2009-01-05 21:10:03 UTC
  • mfrom: (1.2.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20090105211003-mh6zc3um4k1uhsj7
Tags: 1:4.2.4p4+dfsg-8
It did not properly check the return value of EVP_VerifyFinal
which results in an malformed DSA signature being treated as
a good signature rather than as an error.  (CVE-2009-0021)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
/*
2
 
 * /src/NTP/ntp-4/libparse/clk_meinberg.c,v 4.8 1999/11/28 09:13:50 kardel RELEASE_19991128_A
 
2
 * /src/NTP/REPOSITORY/ntp4-dev/libparse/clk_meinberg.c,v 4.12.2.1 2005/09/25 10:22:35 kardel RELEASE_20050925_A
3
3
 *  
4
 
 * clk_meinberg.c,v 4.8 1999/11/28 09:13:50 kardel RELEASE_19991128_A
 
4
 * clk_meinberg.c,v 4.12.2.1 2005/09/25 10:22:35 kardel RELEASE_20050925_A
5
5
 *
6
6
 * Meinberg clock support
7
7
 *
8
 
 * Copyright (C) 1995-1999 by Frank Kardel <kardel@acm.org>
9
 
 * Copyright (C) 1992-1994 by Frank Kardel, Friedrich-Alexander Universit�t Erlangen-N�rnberg, Germany
10
 
 *                                    
11
 
 * This program is distributed in the hope that it will be useful,
12
 
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
 
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 
8
 * Copyright (c) 1995-2005 by Frank Kardel <kardel <AT> ntp.org>
 
9
 * Copyright (c) 1989-1994 by Frank Kardel, Friedrich-Alexander Universit�t Erlangen-N�rnberg, Germany
 
10
 *
 
11
 * Redistribution and use in source and binary forms, with or without
 
12
 * modification, are permitted provided that the following conditions
 
13
 * are met:
 
14
 * 1. Redistributions of source code must retain the above copyright
 
15
 *    notice, this list of conditions and the following disclaimer.
 
16
 * 2. Redistributions in binary form must reproduce the above copyright
 
17
 *    notice, this list of conditions and the following disclaimer in the
 
18
 *    documentation and/or other materials provided with the distribution.
 
19
 * 3. Neither the name of the author nor the names of its contributors
 
20
 *    may be used to endorse or promote products derived from this software
 
21
 *    without specific prior written permission.
 
22
 *
 
23
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
 
24
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 
25
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 
26
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
 
27
 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 
28
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 
29
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 
30
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 
31
 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 
32
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 
33
 * SUCH DAMAGE.
14
34
 *
15
35
 */
16
36
 
626
646
      msg_buf->phase = MBG_NONE; /* buffer overflow - discard */
627
647
      parseio->parse_data[parseio->parse_index] = '\0';
628
648
      memcpy(parseio->parse_ldata, parseio->parse_data, (unsigned)(parseio->parse_index+1));
629
 
      parseio->parse_ldsize = parseio->parse_index+1;
 
649
      parseio->parse_ldsize = parseio->parse_index;
630
650
      return PARSE_INP_DATA;
631
651
    }
632
652
  
650
670
          parseprintf(DD_PARSE, ("gps_input: string complete\n"));
651
671
          parseio->parse_data[parseio->parse_index] = '\0';
652
672
          memcpy(parseio->parse_ldata, parseio->parse_data, (unsigned)(parseio->parse_index+1));
653
 
          parseio->parse_ldsize = parseio->parse_index+1;
 
673
          parseio->parse_ldsize = parseio->parse_index;
654
674
          parseio->parse_index = 0;
655
675
          return PARSE_INP_TIME;
656
676
        }
715
735
 * History:
716
736
 *
717
737
 * clk_meinberg.c,v
 
738
 * Revision 4.12.2.1  2005/09/25 10:22:35  kardel
 
739
 * cleanup buffer bounds
 
740
 *
 
741
 * Revision 4.12  2005/04/16 17:32:10  kardel
 
742
 * update copyright
 
743
 *
 
744
 * Revision 4.11  2004/11/14 15:29:41  kardel
 
745
 * support PPSAPI, upgrade Copyright to Berkeley style
 
746
 *
718
747
 * Revision 4.8  1999/11/28 09:13:50  kardel
719
748
 * RECON_4_0_98F
720
749
 *