diff options
Diffstat (limited to 'compat.c')
-rw-r--r-- | compat.c | 15 |
1 files changed, 9 insertions, 6 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: compat.c,v 1.86 2014/10/08 22:15:27 djm Exp $ */ | 1 | /* $OpenBSD: compat.c,v 1.87 2015/01/19 20:20:20 markus Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 1999, 2000, 2001, 2002 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -57,7 +57,7 @@ enable_compat13(void) | |||
57 | compat13 = 1; | 57 | compat13 = 1; |
58 | } | 58 | } |
59 | /* datafellows bug compatibility */ | 59 | /* datafellows bug compatibility */ |
60 | void | 60 | u_int |
61 | compat_datafellows(const char *version) | 61 | compat_datafellows(const char *version) |
62 | { | 62 | { |
63 | int i; | 63 | int i; |
@@ -174,13 +174,14 @@ compat_datafellows(const char *version) | |||
174 | for (i = 0; check[i].pat; i++) { | 174 | for (i = 0; check[i].pat; i++) { |
175 | if (match_pattern_list(version, check[i].pat, | 175 | if (match_pattern_list(version, check[i].pat, |
176 | strlen(check[i].pat), 0) == 1) { | 176 | strlen(check[i].pat), 0) == 1) { |
177 | datafellows = check[i].bugs; | ||
178 | debug("match: %s pat %s compat 0x%08x", | 177 | debug("match: %s pat %s compat 0x%08x", |
179 | version, check[i].pat, datafellows); | 178 | version, check[i].pat, check[i].bugs); |
180 | return; | 179 | datafellows = check[i].bugs; /* XXX for now */ |
180 | return check[i].bugs; | ||
181 | } | 181 | } |
182 | } | 182 | } |
183 | debug("no match: %s", version); | 183 | debug("no match: %s", version); |
184 | return 0; | ||
184 | } | 185 | } |
185 | 186 | ||
186 | #define SEP "," | 187 | #define SEP "," |
@@ -192,7 +193,9 @@ proto_spec(const char *spec) | |||
192 | 193 | ||
193 | if (spec == NULL) | 194 | if (spec == NULL) |
194 | return ret; | 195 | return ret; |
195 | q = s = xstrdup(spec); | 196 | q = s = strdup(spec); |
197 | if (s == NULL) | ||
198 | return ret; | ||
196 | for ((p = strsep(&q, SEP)); p && *p != '\0'; (p = strsep(&q, SEP))) { | 199 | for ((p = strsep(&q, SEP)); p && *p != '\0'; (p = strsep(&q, SEP))) { |
197 | switch (atoi(p)) { | 200 | switch (atoi(p)) { |
198 | case 1: | 201 | case 1: |