aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2013-08-27 08:22:09 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2014-12-22 15:36:47 +0000
commit1253f80db0b24722e01268175fe6982c37f1ee78 (patch)
tree68a369bfa6a65137ddd9fbf712daceb2329de42a
parentfefee11712fb0559830e81c3825475bd2b8b9316 (diff)
downloadaports-1253f80db0b24722e01268175fe6982c37f1ee78.tar.bz2
aports-1253f80db0b24722e01268175fe6982c37f1ee78.tar.xz
main/git: security upgrade to 1.8.5.6 (CVE-2014-9390)
-rw-r--r--main/git/0001-config-add-_cb-suffix-to-callback-functions.patch82
-rw-r--r--main/git/APKBUILD22
2 files changed, 96 insertions, 8 deletions
diff --git a/main/git/0001-config-add-_cb-suffix-to-callback-functions.patch b/main/git/0001-config-add-_cb-suffix-to-callback-functions.patch
new file mode 100644
index 0000000000..5a22944be2
--- /dev/null
+++ b/main/git/0001-config-add-_cb-suffix-to-callback-functions.patch
@@ -0,0 +1,82 @@
+diff -rupN a/config.c b/config.c
+--- a/config.c 2013-09-27 01:49:38.000000000 +0200
++++ b/config.c 2013-10-16 20:26:27.835675951 +0200
+@@ -30,6 +30,9 @@ struct config_source {
+ int (*do_fgetc)(struct config_source *c);
+ int (*do_ungetc)(int c, struct config_source *conf);
+ long (*do_ftell)(struct config_source *c);
++ int (*do_fgetc_cb)(struct config_source *c);
++ int (*do_ungetc_cb)(int c, struct config_source *conf);
++ long (*do_ftell_cb)(struct config_source *c);
+ };
+
+ static struct config_source *cf;
+@@ -217,13 +220,13 @@ int git_config_from_parameters(config_fn
+
+ static int get_next_char(void)
+ {
+- int c = cf->do_fgetc(cf);
++ int c = cf->do_fgetc_cb(cf);
+
+ if (c == '\r') {
+ /* DOS like systems */
+- c = cf->do_fgetc(cf);
++ c = cf->do_fgetc_cb(cf);
+ if (c != '\n') {
+- cf->do_ungetc(c, cf);
++ cf->do_ungetc_cb(c, cf);
+ c = '\r';
+ }
+ }
+@@ -995,6 +998,9 @@ int git_config_from_file(config_fn_t fn,
+ top.do_fgetc = config_file_fgetc;
+ top.do_ungetc = config_file_ungetc;
+ top.do_ftell = config_file_ftell;
++ top.do_fgetc_cb = config_file_fgetc;
++ top.do_ungetc_cb = config_file_ungetc;
++ top.do_ftell_cb = config_file_ftell;
+
+ ret = do_config_from(&top, fn, data);
+
+@@ -1016,6 +1022,9 @@ int git_config_from_buf(config_fn_t fn,
+ top.do_fgetc = config_buf_fgetc;
+ top.do_ungetc = config_buf_ungetc;
+ top.do_ftell = config_buf_ftell;
++ top.do_fgetc_cb = config_buf_fgetc;
++ top.do_ungetc_cb = config_buf_ungetc;
++ top.do_ftell_cb = config_buf_ftell;
+
+ return do_config_from(&top, fn, data);
+ }
+@@ -1196,7 +1205,7 @@ static int store_aux(const char *key, co
+ return 1;
+ }
+
+- store.offset[store.seen] = cf->do_ftell(cf);
++ store.offset[store.seen] = cf->do_ftell_cb(cf);
+ store.seen++;
+ }
+ break;
+@@ -1223,19 +1232,19 @@ static int store_aux(const char *key, co
+ * Do not increment matches: this is no match, but we
+ * just made sure we are in the desired section.
+ */
+- store.offset[store.seen] = cf->do_ftell(cf);
++ store.offset[store.seen] = cf->do_ftell_cb(cf);
+ /* fallthru */
+ case SECTION_END_SEEN:
+ case START:
+ if (matches(key, value)) {
+- store.offset[store.seen] = cf->do_ftell(cf);
++ store.offset[store.seen] = cf->do_ftell_cb(cf);
+ store.state = KEY_SEEN;
+ store.seen++;
+ } else {
+ if (strrchr(key, '.') - key == store.baselen &&
+ !strncmp(key, store.key, store.baselen)) {
+ store.state = SECTION_SEEN;
+- store.offset[store.seen] = cf->do_ftell(cf);
++ store.offset[store.seen] = cf->do_ftell_cb(cf);
+ }
+ }
+ }
diff --git a/main/git/APKBUILD b/main/git/APKBUILD
index 4ad68ab5d2..e6c7be5d7c 100644
--- a/main/git/APKBUILD
+++ b/main/git/APKBUILD
@@ -1,7 +1,7 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=git
-pkgver=1.8.2.3
-pkgrel=1
+pkgver=1.8.5.6
+pkgrel=0
pkgdesc="A distributed version control system"
url="http://git.or.cz/"
arch="all"
@@ -9,8 +9,10 @@ license="GPL2+"
depends=
replaces="git-perl"
subpackages="$pkgname-doc $pkgname-svn $pkgname-perl"
-makedepends="zlib-dev openssl-dev curl-dev expat-dev perl-dev python-dev"
-source="http://git-core.googlecode.com/files/git-$pkgver.tar.gz
+makedepends="zlib-dev openssl-dev curl-dev expat-dev perl-dev python-dev
+ pcre-dev"
+source="git-$pkgver.tar.gz::https://github.com/git/git/archive/v$pkgver.tar.gz
+ 0001-config-add-_cb-suffix-to-callback-functions.patch
bb-tar.patch
git-daemon.initd
git-daemon.confd
@@ -20,7 +22,8 @@ _makeopts="NO_ICONV=YesPlease
NO_GETTEXT=YesPlease
NO_NSEC=YesPlease
NO_TCLTK=YesPlease
- NO_SVN_TESTS=YesPlease"
+ NO_SVN_TESTS=YesPlease
+ USE_LIBPCRE=1"
prepare() {
cd "$srcdir"/$pkgname-$pkgver
@@ -72,15 +75,18 @@ svn() {
mv "$pkgdir"/usr/libexec/git-core/git-svn "$subpkgdir"/usr/libexec/git-core
}
-md5sums="03ebfd403a8cf355da0e3f15e53b8925 git-1.8.2.3.tar.gz
+md5sums="bbaa27d812be3ece87fcd830c6fdd6ab git-1.8.5.6.tar.gz
+178d2d10f9740fac4a8af0155368b3d9 0001-config-add-_cb-suffix-to-callback-functions.patch
e63a201556c4f089de790805c09a2e5b bb-tar.patch
c92d9339a131e708cc65e1cac1e2520a git-daemon.initd
2258e95d389ccc6de0b5111d53d9eed6 git-daemon.confd"
-sha256sums="ba8d42d47b0955b17905af0133b01ab8e3f28f0e39b9967ec446403c0b49991f git-1.8.2.3.tar.gz
+sha256sums="d66f148301d7f04017bba7f9fe141cffae51b9e2b2324efa065bb76c17a6ee00 git-1.8.5.6.tar.gz
+c0f66913df49d35e197ff18426b2835a3bd539373c579d253cc4fcdf6c5b77c5 0001-config-add-_cb-suffix-to-callback-functions.patch
cb6319f47d81605e199771350154cbed0a6e85ef9042a689f2b405c64039f49c bb-tar.patch
02eb703e3638275104e12c8057f16b9a858ac5c8dc56d2e9ca68d7d3250a1917 git-daemon.initd
aaa80bd059db549dadf4c4e27a9aa41a4b5def844f8e563c493bc8513dcd981e git-daemon.confd"
-sha512sums="9b9d777ed1cc6beb87dc3783e4873365c59e83b324ec1739cf9823f68d318c8f76107a664f06499d73c2cc2120f3ecc3b04d3603a99e7c3147ef334b0609caf0 git-1.8.2.3.tar.gz
+sha512sums="d07d218f33ede72841c84fe95aeed2dc7f8bd928ce0c513b695926e504c27854ac981dca211aa52bda9cde243770567fc9e2f2f97ab5213b947b9dee5d70d858 git-1.8.5.6.tar.gz
+3de27e2ff97be2673c218b86c5b0db515a6e6c603302ac158c8cb412e90f13b79381c432adcf661afcc2d5d0d156946bc85c2921c15066d20acf72defc0ce194 0001-config-add-_cb-suffix-to-callback-functions.patch
6fa088a753c2a697e8dbef2032ed63e8c2a0553a41cff2fcff893c2f35c51d2c697054cc921c23ee606f77b93d0f340df85220b15e1c470bd352f7fba3986cd0 bb-tar.patch
6321ea464f0c1d6245a0722e02ff3dc29996e41fb8d9f3c747bfdd914dc1284e6eb62a7d6057e4f99c0c8a23c3e57f9ff76f2cf18d19272f3cc599877f999c41 git-daemon.initd
9640f8078d68ed2678e5249da3f946fc21f50e858b94127a4221de73c6132101afcd46bc1fe33861e9a7f731c0dc9591915b8ebf376b8e690cd7135703966509 git-daemon.confd"