X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=rpm-no-neon.patch;h=a75d5f09a3d49311956258ae06c43ca71520af79;hb=627d2f53c9b335fd2ece14169824c92b200cbae4;hp=b880e95c8ed0d2d1d1f10e20f51d869022699f3f;hpb=1c3816b7e3d880d20f7f4db53ba0a0c113d5942d;p=packages%2Frpm.git diff --git a/rpm-no-neon.patch b/rpm-no-neon.patch index b880e95..a75d5f0 100644 --- a/rpm-no-neon.patch +++ b/rpm-no-neon.patch @@ -1,52 +1,22 @@ -diff -ur rpm-4.4.7.org/configure.ac rpm-4.4.7/configure.ac ---- rpm-4.4.7.org/configure.ac 2006-10-17 22:12:03.110624000 +0200 -+++ rpm-4.4.7/configure.ac 2006-10-17 22:12:43.117124500 +0200 -@@ -530,33 +530,6 @@ - AC_SUBST(WITH_BEECRYPT_INCLUDE) - AC_SUBST(WITH_BEECRYPT_LIB) - --#================= --# Check for neon library. Prefer external, otherwise internal. --WITH_NEON_SUBDIR= --WITH_NEON_INCLUDE= --WITH_NEON_LIB= --AC_CHECK_HEADER([neon/ne_session.h], [ -- AC_CHECK_LIB(neon, ne_session_create, [ -- AC_DEFINE(HAVE_LIBNEON, 1, [Define to 1 if you have the 'neon' library (-lneon).]) -- AC_CHECK_LIB(neon, ne_get_response_header, [ -- AC_DEFINE(HAVE_NEON_NE_GET_RESPONSE_HEADER, 1, [Define to 1 if you have ne_get_response_header() in libneon.]) -- ]) -- AC_CHECK_LIB(neon, ne_send_request_chunk, [ -- AC_DEFINE(HAVE_NEON_NE_SEND_REQUEST_CHUNK, 1, [Define to 1 if you have ne_send_request_chunk() in libneon.]) -- ]) -- WITH_NEON_INCLUDE="-I${includedir}/neon" -- WITH_NEON_LIB="-lneon" -- ]) --],[ -- if test -d neon ; then -- AC_DEFINE(HAVE_LIBNEON, 1, [Define to 1 if you have the 'neon' library (-lneon).]) --# XXX HAVE_NEON_NE_GET_RESPONSE_HEADER assumes libneon-0.25 devel internal -- AC_DEFINE(HAVE_NEON_NE_GET_RESPONSE_HEADER, 1, [Define to 1 if you have ne_get_response_header() in libneon.]) -- WITH_NEON_SUBDIR=neon -- WITH_NEON_INCLUDE="-I\${top_srcdir}/${WITH_NEON_SUBDIR}/src" -- WITH_NEON_LIB="\${top_builddir}/${WITH_NEON_SUBDIR}/src/libneon.la" -- fi --]) - AC_SUBST(WITH_NEON_SUBDIR) - AC_SUBST(WITH_NEON_INCLUDE) - AC_SUBST(WITH_NEON_LIB) -diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c ---- rpm-4.4.7.org/rpmio/rpmdav.c 2006-04-17 17:23:29.000000000 +0200 -+++ rpm-4.4.7/rpmio/rpmdav.c 2006-10-17 22:14:01.150001250 +0200 -@@ -9,31 +9,6 @@ +--- rpm-4.5/rpmio/rpmdav.c~ 2008-07-09 12:38:31.000000000 +0300 ++++ rpm-4.5/rpmio/rpmdav.c 2008-09-04 17:43:50.215697868 +0300 +@@ -9,58 +9,6 @@ #include #endif +-#if USE_INTERNAL_NEON -#include "ne_alloc.h" -#include "ne_auth.h" -#include "ne_basic.h" -#include "ne_dates.h" -#include "ne_locks.h" +-#else +-#include "neon/ne_alloc.h" +-#include "neon/ne_auth.h" +-#include "neon/ne_basic.h" +-#include "neon/ne_dates.h" +-#include "neon/ne_locks.h" +-#endif - -#define NEONBLOWSCHUNKS -#ifndef NEONBLOWSCHUNKS @@ -54,14 +24,33 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -#include "../neon/src/ne_private.h" -#endif - +-#if USE_INTERNAL_NEON -#include "ne_props.h" -#include "ne_request.h" -#include "ne_socket.h" -#include "ne_string.h" -#include "ne_utils.h" +-#include "ne_md5.h" /* for version detection only */ +-#else +-#include "neon/ne_props.h" +-#include "neon/ne_request.h" +-#include "neon/ne_socket.h" +-#include "neon/ne_string.h" +-#include "neon/ne_utils.h" +-#include "neon/ne_md5.h" /* for version detection only */ +-#endif +- +-/* poor-man's NEON version determination */ +-#if defined(NE_MD5_H) +-#define WITH_NEON_MIN_VERSION 0x002700 +-#elif defined(NE_FEATURE_I18N) +-#define WITH_NEON_MIN_VERSION 0x002600 +-#else +-#define WITH_NEON_MIN_VERSION 0x002500 +-#endif - --/* XXX API changes for neon-0.26.0 */ --#if !defined(NE_FREE) +-/* XXX API changes for NEON 0.26 */ +-#if WITH_NEON_MIN_VERSION >= 0x002600 -#define ne_set_persist(_sess, _flag) -#define ne_propfind_set_private(_pfh, _create_item, NULL) \ - ne_propfind_set_private(_pfh, _create_item, NULL, NULL) @@ -70,21 +59,41 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c #include #define _RPMDAV_INTERNAL -@@ -69,1332 +44,6 @@ - } +@@ -74,1469 +22,6 @@ + /*@access FD_t @*/ + /*@access urlinfo @*/ - /* =============================================================== */ --static int davFree(urlinfo u) +-#if 0 /* HACK: reasonable value needed. */ +-#define TIMEOUT_SECS 60 +-#else +-#define TIMEOUT_SECS 5 +-#endif +-/*@unchecked@*/ +-static int httpTimeoutSecs = TIMEOUT_SECS; +- +-/* =============================================================== */ +-int davFree(urlinfo u) - /*@globals internalState @*/ - /*@modifies u, internalState @*/ -{ -- if (u != NULL && u->sess != NULL) { -- u->capabilities = _free(u->capabilities); -- if (u->lockstore != NULL) -- ne_lockstore_destroy(u->lockstore); -- u->lockstore = NULL; -- ne_session_destroy(u->sess); -- u->sess = NULL; +- if (u != NULL) { +- if (u->sess != NULL) { +- ne_session_destroy(u->sess); +- u->sess = NULL; +- } +- switch (u->urltype) { +- default: +- /*@notreached@*/ break; +- case URL_IS_HTTPS: +- case URL_IS_HTTP: +- case URL_IS_HKP: +- u->capabilities = _free(u->capabilities); +- if (u->lockstore != NULL) +- ne_lockstore_destroy(u->lockstore); +- u->lockstore = NULL; +- ne_sock_exit(); +- break; +- } - } - return 0; -} @@ -107,8 +116,13 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -fprintf(stderr, "*** davProgress(%p,0x%x:0x%x) sess %p u %p\n", userdata, (unsigned int)current, (unsigned int)total, sess, u); -} - +-#if WITH_NEON_MIN_VERSION >= 0x002700 +-static void davNotify(void * userdata, +- ne_session_status connstatus, const ne_session_status_info *info) +-#else -static void davNotify(void * userdata, - ne_conn_status connstatus, const char * info) +-#endif - /*@*/ -{ - urlinfo u = userdata; @@ -136,7 +150,9 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -} ne_conn_status; -#endif - +-#if WITH_NEON_MIN_VERSION < 0x002700 - u->connstatus = connstatus; +-#endif - -/*@-boundsread@*/ -if (_dav_debug < 0) @@ -284,18 +300,36 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - /* HACK: where should server capabilities be read? */ - (void) urlPath(u->url, &path); - /* HACK: perhaps capture Allow: tag, look for PUT permitted. */ +- /* XXX [hdr] Allow: GET,HEAD,POST,OPTIONS,TRACE */ - rc = ne_options(u->sess, path, u->capabilities); - switch (rc) { - case NE_OK: -- break; +- { ne_server_capabilities *cap = u->capabilities; +- if (cap->dav_class1) +- u->allow |= RPMURL_SERVER_HASDAVCLASS1; +- else +- u->allow &= ~RPMURL_SERVER_HASDAVCLASS1; +- if (cap->dav_class2) +- u->allow |= RPMURL_SERVER_HASDAVCLASS2; +- else +- u->allow &= ~RPMURL_SERVER_HASDAVCLASS2; +- if (cap->dav_executable) +- u->allow |= RPMURL_SERVER_HASDAVEXEC; +- else +- u->allow &= ~RPMURL_SERVER_HASDAVEXEC; +- } break; - case NE_ERROR: - /* HACK: "301 Moved Permanently" on empty subdir. */ - if (!strncmp("301 ", ne_get_error(u->sess), sizeof("301 ")-1)) - break; -- /*@fallthrough@*/ -- case NE_CONNECT: +- errno = EIO; /* HACK: more precise errno. */ +- goto bottom; - case NE_LOOKUP: +- errno = ENOENT; /* HACK: errno same as non-existent path. */ +- goto bottom; +- case NE_CONNECT: /* HACK: errno set already? */ - default: +-bottom: -if (_dav_debug) -fprintf(stderr, "*** Connect to %s:%d failed(%d):\n\t%s\n", - u->host, u->port, rc, ne_get_error(u->sess)); @@ -355,7 +389,11 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -#endif - - ne_set_progress(u->sess, davProgress, u); +-#if WITH_NEON_MIN_VERSION >= 0x002700 +- ne_set_notifier(u->sess, davNotify, u); +-#else - ne_set_status(u->sess, davNotify, u); +-#endif - - ne_set_persist(u->sess, 1); - ne_set_read_timeout(u->sess, httpTimeoutSecs); @@ -383,8 +421,8 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - -exit: -/*@-boundswrite@*/ -- if (rc == 0 && uret != NULL) -- *uret = urlLink(u, __FUNCTION__); +- if (uret != NULL) +- *uret = urlLink(u, "davInit"); -/*@=boundswrite@*/ - u = urlFree(u, "urlSplit (davInit)"); - @@ -440,7 +478,11 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -} -#endif - +-#if WITH_NEON_MIN_VERSION >= 0x002600 +-static void *fetch_create_item(/*@unused@*/ void *userdata, /*@unused@*/ const ne_uri *uri) +-#else -static void *fetch_create_item(/*@unused@*/ void *userdata, /*@unused@*/ const char *uri) +-#endif - /*@*/ -{ - struct fetch_resource_s * res = ne_calloc(sizeof(*res)); @@ -458,6 +500,8 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - int ac; - int nalloced; - ARGV_t av; +-/*@null@*/ /*@shared@*/ +- struct stat *st; - mode_t * modes; - size_t * sizes; - time_t * mtimes; @@ -475,7 +519,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - ctx->modes = _free(ctx->modes); - ctx->sizes = _free(ctx->sizes); - ctx->mtimes = _free(ctx->mtimes); -- ctx->u = urlFree(ctx->u, __FUNCTION__); +- ctx->u = urlFree(ctx->u, "fetch_destroy_context"); - ctx->uri = _free(ctx->uri); -/*@-boundswrite@*/ - memset(ctx, 0, sizeof(*ctx)); @@ -485,7 +529,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -} - -/*@null@*/ --static void *fetch_create_context(const char *uri) +-static void *fetch_create_context(const char *uri, /*@null@*/ struct stat *st) - /*@globals internalState @*/ - /*@modifies internalState @*/ -{ @@ -499,7 +543,9 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - - ctx = ne_calloc(sizeof(*ctx)); - ctx->uri = xstrdup(uri); -- ctx->u = urlLink(u, __FUNCTION__); +- ctx->u = urlLink(u, "fetch_create_context"); +- if ((ctx->st = st) != NULL) +- memset(ctx->st, 0, sizeof(*ctx->st)); - return ctx; -} - @@ -569,8 +615,13 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - } -} - +-#if WITH_NEON_MIN_VERSION >= 0x002600 +-static void fetch_results(void *userdata, const ne_uri *uarg, +- const ne_prop_result_set *set) +-#else -static void fetch_results(void *userdata, void *uarg, - const ne_prop_result_set *set) +-#endif - /*@*/ -{ - struct fetch_context_s *ctx = userdata; @@ -580,7 +631,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - const ne_status *status = NULL; - const char * path = NULL; - --#if !defined(NE_FREE) +-#if WITH_NEON_MIN_VERSION >= 0x002600 - const ne_uri * uri = uarg; - (void) urlPath(uri->path, &path); -#else @@ -702,7 +753,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - (void) urlPath(u->url, &path); - pfh = ne_propfind_create(u->sess, ctx->uri, depth); - -- /* HACK: need to set u->httpHasRange here. */ +- /* HACK: need to set RPMURL_SERVER_HASRANGE in u->allow here. */ - - ctx->resrock = resrock; - ctx->include_target = include_target; @@ -782,7 +833,70 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - current = fetch_destroy_item(current); - } - ctx->resrock = NULL; /* HACK: avoid leaving stack reference. */ +- /* HACK realloc to truncate modes/sizes/mtimes */ +- +- return rc; +-} +- +-/* HACK this should be rewritten to use davReq/davResp w callbacks. */ +-static int davHEAD(urlinfo u, struct stat *st) +- /*@modifies *st @*/ +-{ +- ne_request *req; +- const char *htag; +- const char *value = NULL; +- int rc; +- +- st->st_mode = S_IFREG; +- st->st_blksize = 4 * 1024; /* HACK correct for linux ext */ +- st->st_size = -1; +- st->st_atime = -1; +- st->st_mtime = -1; +- st->st_ctime = -1; +- +- req = ne_request_create(u->sess, "HEAD", u->url); +- +- rc = ne_request_dispatch(req); +- switch (rc) { +- default: +- goto exit; +- /*@notreached@*/ +- case NE_OK: +- if (ne_get_status(req)->klass != 2) { +- rc = NE_ERROR; +- goto exit; +- } +- break; +- } +- +-#ifdef NOTYET +- htag = "ETag"; +- value = ne_get_response_header(req, htag); +- if (value) { +- /* inode-size-mtime */ +- } +-#endif +- +- htag = "Content-Length"; +-#if defined(HAVE_NEON_NE_GET_RESPONSE_HEADER) +- value = ne_get_response_header(req, htag); +-#endif +- if (value) { +- st->st_size = strtoll(value, NULL, 10); +- st->st_blocks = (st->st_size + 511)/512; +- } +- +- htag = "Last-Modified"; +-#if defined(HAVE_NEON_NE_GET_RESPONSE_HEADER) +- value = ne_get_response_header(req, htag); +-#endif +- if (value) { +- st->st_mtime = ne_httpdate_parse(value); +- st->st_atime = st->st_ctime = st->st_mtime; /* HACK */ +- } - +-exit: +- ne_request_destroy(req); - return rc; -} - @@ -798,11 +912,19 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - if (rc || u == NULL) - goto exit; - -- rc = davFetch(u, ctx); +-/* HACK do PROPFIND through davFetch iff enabled, otherwise HEAD Content-length/ETag/Last-Modified */ +- if (u->allow & RPMURL_SERVER_HASDAV) +- rc = davFetch(u, ctx); /* use PROPFIND to get contentLength */ +- else +- rc = davHEAD(u, ctx->st); /* use HEAD to get contentLength */ +- - switch (rc) { - case NE_OK: - break; - case NE_ERROR: +- /* HACK: "405 Method Not Allowed" for PROPFIND on non-DAV servers. */ +- /* XXX #206066 OPTIONS is ok, but PROPFIND from Stat() fails. */ +- /* rpm -qp --rpmiodebug --davdebug http://people.freedesktop.org/~sandmann/metacity-2.16.0-2.fc6/i386/metacity-2.16.0-2.fc6.i386.rpm */ - /* HACK: "301 Moved Permanently" on empty subdir. */ - if (!strncmp("301 ", ne_get_error(u->sess), sizeof("301 ")-1)) - break; @@ -815,8 +937,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - } - -exit: -- if (rc) -- xx = davFree(u); +- xx = davFree(u); - return rc; -} - @@ -867,9 +988,9 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -if (_dav_debug < 0) -fprintf(stderr, "*** u %p Accept-Ranges: %s\n", u, value); - if (!strcmp(value, "bytes")) -- u->httpHasRange = 1; +- u->allow |= RPMURL_SERVER_HASRANGE; - if (!strcmp(value, "none")) -- u->httpHasRange = 0; +- u->allow &= ~RPMURL_SERVER_HASRANGE; -} -/*@=mustmod@*/ - @@ -1101,9 +1222,11 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - -ssize_t davWrite(void * cookie, const char * buf, size_t count) -{ +-#if !defined(NEONBLOWSCHUNKS) || defined(HAVE_NEON_NE_SEND_REQUEST_CHUNK) || defined(__LCLINT__) - FD_t fd = cookie; +-#endif - ssize_t rc; -- int xx; +- int xx = -1; - -#if !defined(NEONBLOWSCHUNKS) - ne_session * sess; @@ -1294,7 +1417,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -} - -/*@unchecked@*/ --static int dav_st_ino = 0xdead0000; +-static unsigned int dav_st_ino = 0xdead0000; - -/*@-boundswrite@*/ -int davStat(const char * path, /*@out@*/ struct stat *st) @@ -1306,8 +1429,9 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - int rc = -1; - -/* HACK: neon really wants collections with trailing '/' */ -- ctx = fetch_create_context(path); +- ctx = fetch_create_context(path, st); - if (ctx == NULL) { +-fprintf(stderr, "==> %s fetch_create_context ctx %p\n", "davStat", ctx); -/* HACK: errno = ??? */ - goto exit; - } @@ -1317,10 +1441,11 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - goto exit; - } - -- memset(st, 0, sizeof(*st)); -- st->st_mode = ctx->modes[0]; -- st->st_size = ctx->sizes[0]; -- st->st_mtime = ctx->mtimes[0]; +- if (st->st_mode == 0) +- st->st_mode = (ctx->ac > 1 ? S_IFDIR : S_IFREG); +- st->st_size = (ctx->sizes ? ctx->sizes[0] : st->st_size); +- st->st_mtime = (ctx->mtimes ? ctx->mtimes[0] : st->st_mtime); +- st->st_atime = st->st_ctime = st->st_mtime; /* HACK */ - if (S_ISDIR(st->st_mode)) { - st->st_nlink = 2; - st->st_mode |= 0755; @@ -1333,9 +1458,10 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - /* XXX fts(3) needs/uses st_ino, make something up for now. */ - if (st->st_ino == 0) - st->st_ino = dav_st_ino++; +- +-exit: -if (_dav_debug < 0) -fprintf(stderr, "*** davStat(%s) rc %d\n%s", path, rc, statstr(st, buf)); --exit: - ctx = fetch_destroy_context(ctx); - return rc; -} @@ -1351,7 +1477,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - int rc = -1; - -/* HACK: neon really wants collections with trailing '/' */ -- ctx = fetch_create_context(path); +- ctx = fetch_create_context(path, st); - if (ctx == NULL) { -/* HACK: errno = ??? */ - goto exit; @@ -1362,10 +1488,11 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - goto exit; - } - -- memset(st, 0, sizeof(*st)); -- st->st_mode = ctx->modes[0]; -- st->st_size = ctx->sizes[0]; -- st->st_mtime = ctx->mtimes[0]; +- if (st->st_mode == 0) +- st->st_mode = (ctx->ac > 1 ? S_IFDIR : S_IFREG); +- st->st_size = (ctx->sizes ? ctx->sizes[0] : st->st_size); +- st->st_mtime = (ctx->mtimes ? ctx->mtimes[0] : st->st_mtime); +- st->st_atime = st->st_ctime = st->st_mtime; /* HACK */ - if (S_ISDIR(st->st_mode)) { - st->st_nlink = 2; - st->st_mode |= 0755; @@ -1399,14 +1526,14 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -} -#endif /* NOTYET */ - --/* =============================================================== */ + /* =============================================================== */ /*@unchecked@*/ int avmagicdir = 0x3607113; - -@@ -1518,171 +167,4 @@ +@@ -1660,179 +145,3 @@ + /*@=kepttrans@*/ } /*@=boundswrite@*/ - +- -/* =============================================================== */ -/*@unchecked@*/ -int davmagicdir = 0x8440291; @@ -1445,7 +1572,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - dp = (struct dirent *) avdir->data; - av = (const char **) (dp + 1); - ac = avdir->size; -- dt = (char *) (av + (ac + 1)); +- dt = (unsigned char *) (av + (ac + 1)); - i = avdir->offset + 1; - -/*@-boundsread@*/ @@ -1461,7 +1588,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - dp->d_reclen = 0; /* W2DO? */ - -#if !(defined(hpux) || defined(__hpux) || defined(sun)) --#if !defined(__APPLE__) +-#if !defined(__APPLE__) && !defined(__FreeBSD_kernel__) && !defined(__FreeBSD__) - dp->d_off = 0; /* W2DO? */ -#endif -/*@-boundsread@*/ @@ -1489,7 +1616,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - char * t; - int ac, nac; - int rc; - +- - /* HACK: glob does not pass dirs with trailing '/' */ - nb = strlen(path)+1; -/*@-branchstate@*/ @@ -1505,7 +1632,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -fprintf(stderr, "*** davOpendir(%s)\n", path); - - /* Load DAV collection into argv. */ -- ctx = fetch_create_context(path); +- ctx = fetch_create_context(path, NULL); - if (ctx == NULL) { -/* HACK: errno = ??? */ - return NULL; @@ -1530,7 +1657,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c - /*@-abstract@*/ - dp = (struct dirent *) (avdir + 1); - nav = (const char **) (dp + 1); -- dt = (char *) (nav + (ac + 1)); +- dt = (unsigned char *) (nav + (ac + 1)); - t = (char *) (dt + ac + 1); - /*@=abstract@*/ - @@ -1575,10 +1702,16 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.c rpm-4.4.7/rpmio/rpmdav.c -/*@=kepttrans@*/ -} -/*@=modfilesys@*/ -diff -ur rpm-4.4.7.org/rpmio/rpmdav.h rpm-4.4.7/rpmio/rpmdav.h ---- rpm-4.4.7.org/rpmio/rpmdav.h 2005-10-11 21:13:59.000000000 +0200 -+++ rpm-4.4.7/rpmio/rpmdav.h 2006-10-17 22:35:33.742783250 +0200 -@@ -41,12 +41,6 @@ +- +-char * davRealpath(const char * path, char * resolved_path) +-{ +-assert(resolved_path == NULL); /* XXX no POSIXly broken realpath(3) here. */ +- /* XXX TODO: handle redirects. For now, just dupe the path. */ +- return xstrdup(path); +-} +--- rpm-4.5/rpmio/rpmdav.h 2007-05-25 20:36:36.000000000 +0300 ++++ rpm-4.4.9/rpmio/rpmdav.h 2008-09-04 17:21:50.369579599 +0300 +@@ -46,12 +46,6 @@ extern int avmagicdir; #define ISAVMAGIC(_dir) (!memcmp((_dir), &avmagicdir, sizeof(avmagicdir))) @@ -1591,7 +1724,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.h rpm-4.4.7/rpmio/rpmdav.h #ifdef __cplusplus extern "C" { #endif -@@ -80,133 +74,6 @@ +@@ -85,133 +79,6 @@ /*@globals fileSystem, internalState @*/ /*@modifies fileSystem, internalState @*/; @@ -1725,10 +1858,21 @@ diff -ur rpm-4.4.7.org/rpmio/rpmdav.h rpm-4.4.7/rpmio/rpmdav.h #ifdef __cplusplus } #endif -diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c ---- rpm-4.4.7.org/rpmio/rpmio.c 2006-08-08 08:55:01.000000000 +0200 -+++ rpm-4.4.7/rpmio/rpmio.c 2006-10-17 22:18:38.135311750 +0200 -@@ -406,13 +406,6 @@ +--- rpm-4.5/rpmio/rpmio.c 2008-09-04 18:04:37.362241187 +0300 ++++ rpm-4.5/rpmio/rpmio.c 2008-09-04 18:05:08.695569896 +0300 +@@ -155,11 +155,6 @@ + /*@unchecked@*/ + int _ftp_debug = 0; + +-/** +- */ +-/*@unchecked@*/ +-int _dav_debug = 0; +- + /* =============================================================== */ + + /*@-boundswrite@*/ +@@ -386,13 +381,6 @@ fdstat_enter(fd, FDSTAT_READ); /*@-boundswrite@*/ @@ -1742,7 +1886,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c rc = read(fdFileno(fd), buf, (count > fd->bytesRemain ? fd->bytesRemain : count)); /*@=boundswrite@*/ fdstat_exit(fd, FDSTAT_READ, rc); -@@ -440,10 +433,6 @@ +@@ -420,10 +408,6 @@ fdstat_enter(fd, FDSTAT_WRITE); /*@-boundsread@*/ @@ -1753,7 +1897,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c rc = write(fdno, buf, (count > fd->bytesRemain ? fd->bytesRemain : count)); /*@=boundsread@*/ fdstat_exit(fd, FDSTAT_WRITE, rc); -@@ -490,11 +479,6 @@ +@@ -470,11 +454,6 @@ fdSetFdno(fd, -1); fdstat_enter(fd, FDSTAT_CLOSE); @@ -1765,7 +1909,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c rc = ((fdno >= 0) ? close(fdno) : -2); /*@=branchstate@*/ fdstat_exit(fd, FDSTAT_CLOSE, rc); -@@ -547,10 +531,6 @@ +@@ -544,10 +523,6 @@ FD_ZERO(&wrfds); #endif @@ -1776,7 +1920,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c if ((fdno = fdFileno(fd)) < 0) return -1; /* XXX W2DO? */ -@@ -602,10 +582,6 @@ +@@ -599,10 +574,6 @@ FD_ZERO(&rdfds); #endif @@ -1787,167 +1931,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c if ((fdno = fdFileno(fd)) < 0) return -1; /* XXX W2DO? */ -@@ -1758,159 +1734,6 @@ - return rc; - } - --#ifdef DEAD --static int httpResp(urlinfo u, FD_t ctrl, /*@out@*/ char ** str) -- /*@globals fileSystem @*/ -- /*@modifies ctrl, *str, fileSystem @*/ --{ -- int ec = 0; -- int rc; -- -- URLSANE(u); -- rc = checkResponse(u, ctrl, &ec, str); -- --if (_ftp_debug && !(rc == 0 && (ec == 200 || ec == 201))) --fprintf(stderr, "*** httpResp: rc %d ec %d\n", rc, ec); -- -- switch (ec) { -- case 200: -- case 201: /* 201 Created. */ -- break; -- case 204: /* HACK: if overwriting, 204 No Content. */ -- case 403: /* 403 Forbidden. */ -- ctrl->syserrno = EACCES; /* HACK */ -- rc = FTPERR_UNKNOWN; -- break; -- default: -- rc = FTPERR_FILE_NOT_FOUND; -- break; -- } -- return rc; --} -- --static int httpReq(FD_t ctrl, const char * httpCmd, const char * httpArg) -- /*@globals h_errno, fileSystem, internalState @*/ -- /*@modifies ctrl, fileSystem, internalState @*/ --{ -- urlinfo u; -- const char * host; -- const char * path; -- char hthost[NI_MAXHOST]; -- int port; -- int rc; -- char * req; -- size_t len; -- int retrying = 0; -- --assert(ctrl != NULL); -- u = ctrl->url; -- URLSANE(u); -- -- if (((host = (u->proxyh ? u->proxyh : u->host)) == NULL)) -- return FTPERR_BAD_HOSTNAME; -- if (strchr(host, ':')) -- sprintf(hthost, "[%s]", host); -- else -- strcpy(hthost, host); -- -- if ((port = (u->proxyp > 0 ? u->proxyp : u->port)) < 0) port = 80; -- path = (u->proxyh || u->proxyp > 0) ? u->url : httpArg; -- /*@-branchstate@*/ -- if (path == NULL) path = ""; -- /*@=branchstate@*/ -- --reopen: -- /*@-branchstate@*/ -- if (fdFileno(ctrl) >= 0 && (rc = fdWritable(ctrl, 0)) < 1) { -- /*@-refcounttrans@*/ (void) fdClose(ctrl); /*@=refcounttrans@*/ -- } -- /*@=branchstate@*/ -- --/*@-usereleased@*/ -- if (fdFileno(ctrl) < 0) { -- rc = tcpConnect(ctrl, host, port); -- if (rc < 0) -- goto errxit2; -- ctrl = fdLink(ctrl, "open ctrl (httpReq)"); -- } -- -- len = sizeof("\ --req x HTTP/1.0\r\n\ --User-Agent: rpm/3.0.4\r\n\ --Host: y:z\r\n\ --Accept: text/plain\r\n\ --Transfer-Encoding: chunked\r\n\ --\r\n\ --") + strlen(httpCmd) + strlen(path) + sizeof(VERSION) + strlen(hthost) + 20; -- --/*@-boundswrite@*/ -- req = alloca(len); -- *req = '\0'; -- -- if (!strcmp(httpCmd, "PUT")) { -- sprintf(req, "\ --%s %s HTTP/1.%d\r\n\ --User-Agent: rpm/%s\r\n\ --Host: %s:%d\r\n\ --Accept: text/plain\r\n\ --Transfer-Encoding: chunked\r\n\ --\r\n\ --", httpCmd, path, (u->httpVersion ? 1 : 0), VERSION, hthost, port); --} else { -- sprintf(req, "\ --%s %s HTTP/1.%d\r\n\ --User-Agent: rpm/%s\r\n\ --Host: %s:%d\r\n\ --Accept: text/plain\r\n\ --\r\n\ --", httpCmd, path, (u->httpVersion ? 1 : 0), VERSION, hthost, port); --} --/*@=boundswrite@*/ -- --if (_ftp_debug) --fprintf(stderr, "-> %s", req); -- -- len = strlen(req); -- if (fdWrite(ctrl, req, len) != len) { -- rc = FTPERR_SERVER_IO_ERROR; -- goto errxit; -- } -- -- /*@-branchstate@*/ -- if (!strcmp(httpCmd, "PUT")) { -- ctrl->wr_chunked = 1; -- } else { -- -- rc = httpResp(u, ctrl, NULL); -- -- if (rc) { -- if (!retrying) { /* not HTTP_OK */ -- retrying = 1; -- /*@-refcounttrans@*/ (void) fdClose(ctrl); /*@=refcounttrans@*/ -- goto reopen; -- } -- goto errxit; -- } -- } -- /*@=branchstate@*/ -- -- ctrl = fdLink(ctrl, "open data (httpReq)"); -- return 0; -- --errxit: -- /*@-observertrans@*/ -- fdSetSyserrno(ctrl, errno, ftpStrerror(rc)); -- /*@=observertrans@*/ --errxit2: -- /*@-branchstate@*/ -- if (fdFileno(ctrl) >= 0) -- /*@-refcounttrans@*/ (void) fdClose(ctrl); /*@=refcounttrans@*/ -- /*@=branchstate@*/ -- return rc; --/*@=usereleased@*/ --} --#endif -- - /* XXX DYING: unused */ - void * ufdGetUrlinfo(FD_t fd) - { -@@ -2268,29 +2091,6 @@ +@@ -2265,29 +2236,6 @@ fd->wr_chunked = 0; } break; @@ -1977,7 +1961,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c case URL_IS_DASH: assert(!(flags & O_RDWR)); fd = fdDup( ((flags & O_WRONLY) ? STDOUT_FILENO : STDIN_FILENO) ); -@@ -2908,10 +2708,8 @@ +@@ -2911,10 +2859,8 @@ if (fd->nfps > 0 && fpno == -1 && fd->fps[fd->nfps-1].io == ufdio && fd->fps[fd->nfps-1].fp == fp && @@ -1989,7 +1973,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c if (fp) rc = fflush(fp); fd->nfps--; -@@ -2921,26 +2719,9 @@ +@@ -2924,26 +2870,9 @@ /*@-usereleased@*/ if (fdGetFdno(fd) >= 0) break; @@ -2016,26 +2000,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c rc = fclose(fp); } fdPop(fd); -@@ -3195,18 +2976,9 @@ - return NULL; - } - } else { -- FILE *fp; -- int fdno; -- int isHTTP = 0; -- - /* XXX gzdio and bzdio here too */ - - switch (urlIsURL(path)) { -- case URL_IS_HTTPS: -- case URL_IS_HTTP: -- case URL_IS_HKP: -- isHTTP = 1; -- /*@fallthrough@*/ - case URL_IS_PATH: - case URL_IS_DASH: - case URL_IS_FTP: -@@ -3214,7 +2986,7 @@ +@@ -3223,7 +3152,7 @@ if (_rpmio_debug) fprintf(stderr, "*** Fopen ufdio path %s fmode %s\n", path, fmode); fd = ufdOpen(path, flags, perms); @@ -2044,23 +2009,16 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c return fd; break; default: -@@ -3223,15 +2995,6 @@ - return NULL; - /*@notreached@*/ break; +@@ -3234,7 +3163,7 @@ } -- -- /* XXX persistent HTTP/1.1 returns the previously opened fp */ -- if (isHTTP && ((fp = fdGetFp(fd)) != NULL) && ((fdno = fdGetFdno(fd)) >= 0 || fd->req != NULL)) -- { -- /*@+voidabstract@*/ -- fdPush(fd, fpio, fp, fileno(fp)); /* Push fpio onto stack */ -- /*@=voidabstract@*/ -- return fd; -- } - } - /*@=branchstate@*/ -@@ -3267,10 +3030,6 @@ + /* XXX persistent HTTP/1.1 returns the previously opened fp */ +- if (isHTTP && ((fp = fdGetFp(fd)) != NULL) && ((fdno = fdGetFdno(fd)) >= 0 || fd->req != NULL)) ++ if (isHTTP && ((fp = fdGetFp(fd)) != NULL) && ((fdno = fdGetFdno(fd)) >= 0)) + { + /*@+voidabstract@*/ + fdPush(fd, fpio, fp, fileno(fp)); /* Push fpio onto stack */ +@@ -3276,10 +3205,6 @@ int i, rc = 0; if (fd == NULL) return -1; @@ -2071,7 +2029,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c for (i = fd->nfps; rc == 0 && i >= 0; i--) { /*@-boundsread@*/ FDSTACK_t * fps = &fd->fps[i]; -@@ -3305,9 +3064,6 @@ +@@ -3317,9 +3242,6 @@ { int i, rc = -1; @@ -2081,21 +2039,57 @@ diff -ur rpm-4.4.7.org/rpmio/rpmio.c rpm-4.4.7/rpmio/rpmio.c for (i = fd->nfps ; rc == -1 && i >= 0; i--) { /*@-boundsread@*/ rc = fd->fps[i].fdno; -diff -ur rpm-4.4.7.org/rpmio/rpmio_internal.h rpm-4.4.7/rpmio/rpmio_internal.h ---- rpm-4.4.7.org/rpmio/rpmio_internal.h 2006-06-18 20:54:59.000000000 +0200 -+++ rpm-4.4.7/rpmio/rpmio_internal.h 2006-10-17 22:18:51.308135000 +0200 -@@ -157,7 +157,6 @@ - /*@dependent@*/ - void * url; /* ufdio: URL info */ - /*@relnull@*/ -- void * req; /* ufdio: HTTP request */ +--- rpm-4.5/rpmio/librpmio.vers~ 2008-07-09 12:38:31.000000000 +0300 ++++ rpm-4.5/rpmio/librpmio.vers 2008-09-04 17:52:56.158976430 +0300 +@@ -29,25 +29,6 @@ + Chmod; + Chown; + Chroot; +- davClose; +- davClosedir; +- _dav_debug; +- davLstat; +- davmagicdir; +- davMkdir; +- davOpen; +- davOpendir; +- davRead; +- davReaddir; +- davRealpath; +- davRename; +- davReq; +- davResp; +- davRmdir; +- davSeek; +- davStat; +- davUnlink; +- davWrite; + delMacro; + expandMacros; + Fclose; +--- rpm-4.5/lib/poptALL.c~ 2007-10-23 18:53:08.000000000 +0300 ++++ rpm-4.5/lib/poptALL.c 2008-09-04 17:53:21.845642132 +0300 +@@ -126,8 +126,6 @@ + extern int _ftp_debug; + /*@unchecked@*/ + extern int _av_debug; +-/*@unchecked@*/ +-extern int _dav_debug; - int rd_timeoutsecs; /* ufdRead: per FD_t timer */ - ssize_t bytesRemain; /* ufdio: */ -diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c ---- rpm-4.4.7.org/rpmio/rpmrpc.c 2006-10-03 06:38:01.000000000 +0200 -+++ rpm-4.4.7/rpmio/rpmrpc.c 2006-10-17 22:35:59.040364250 +0200 -@@ -91,10 +91,6 @@ + /*@unchecked@*/ + extern int noLibio; +@@ -424,8 +422,6 @@ + N_("debug FTP/HTTP data stream"), NULL}, + { "avdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_av_debug, -1, + N_("debug argv collections"), NULL}, +- { "davdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_dav_debug, -1, +- N_("debug WebDAV data stream"), NULL}, + { "hdrdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_hdr_debug, -1, + NULL, NULL}, + { "miredebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_mire_debug, -1, +--- rpm-4.5/rpmio/rpmrpc.c 2008-09-04 17:56:39.132287618 +0300 ++++ rpm-4.5/rpmio/rpmrpc.c 2008-09-04 17:57:38.618948392 +0300 +@@ -78,10 +78,6 @@ case URL_IS_FTP: return ftpMkdir(path, mode); /*@notreached@*/ break; @@ -2106,7 +2100,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -118,15 +114,6 @@ +@@ -105,15 +101,6 @@ case URL_IS_FTP: return ftpChdir(path); /*@notreached@*/ break; @@ -2122,7 +2116,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -151,10 +138,6 @@ +@@ -138,10 +125,6 @@ case URL_IS_FTP: return ftpRmdir(path); /*@notreached@*/ break; @@ -2133,16 +2127,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -185,8 +168,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -208,10 +189,6 @@ +@@ -245,10 +228,6 @@ oldut = urlPath(oldpath, &oe); switch (oldut) { @@ -2153,34 +2138,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_FTP: /* XXX WRONG WRONG WRONG */ case URL_IS_PATH: case URL_IS_UNKNOWN: -@@ -233,8 +210,6 @@ - return -2; - return ftpRename(oldpath, newpath); - /*@notreached@*/ break; -- case URL_IS_HTTPS: /* XXX WRONG WRONG WRONG */ -- case URL_IS_HTTP: /* XXX WRONG WRONG WRONG */ - case URL_IS_PATH: - oldpath = oe; - newpath = ne; -@@ -258,8 +233,6 @@ - - oldut = urlPath(oldpath, &oe); - switch (oldut) { -- case URL_IS_HTTPS: /* XXX WRONG WRONG WRONG */ -- case URL_IS_HTTP: /* XXX WRONG WRONG WRONG */ - case URL_IS_FTP: /* XXX WRONG WRONG WRONG */ - case URL_IS_PATH: - case URL_IS_UNKNOWN: -@@ -273,8 +246,6 @@ - - newut = urlPath(newpath, &ne); - switch (newut) { -- case URL_IS_HTTPS: /* XXX WRONG WRONG WRONG */ -- case URL_IS_HTTP: /* XXX WRONG WRONG WRONG */ - case URL_IS_FTP: /* XXX WRONG WRONG WRONG */ - case URL_IS_PATH: - if (_rpmio_debug) -@@ -306,10 +277,6 @@ +@@ -343,10 +322,6 @@ case URL_IS_FTP: return ftpUnlink(path); /*@notreached@*/ break; @@ -2191,7 +2149,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -1308,10 +1275,6 @@ +@@ -1354,10 +1329,6 @@ case URL_IS_FTP: return ftpStat(path, st); /*@notreached@*/ break; @@ -2202,7 +2160,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -1338,10 +1301,6 @@ +@@ -1384,10 +1355,6 @@ case URL_IS_FTP: return ftpLstat(path, st); /*@notreached@*/ break; @@ -2213,79 +2171,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -1373,8 +1332,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1399,8 +1356,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1425,8 +1380,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1451,8 +1404,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1477,8 +1428,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1503,8 +1452,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1529,8 +1476,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1558,8 +1503,6 @@ - case URL_IS_DASH: - case URL_IS_HKP: - case URL_IS_FTP: /* XXX TODO: implement. */ -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ - return -2; -@@ -1577,14 +1520,6 @@ +@@ -1630,14 +1597,6 @@ case URL_IS_FTP: return ftpReadlink(path, buf, bufsiz); /*@notreached@*/ break; @@ -2300,25 +2186,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -1617,8 +1552,6 @@ - break; - case URL_IS_DASH: - case URL_IS_HKP: -- case URL_IS_HTTPS: /* XXX TODO: implement. */ -- case URL_IS_HTTP: /* XXX TODO: implement. */ - case URL_IS_FTP: /* XXX TODO: implement. */ - default: - errno = EINVAL; /* XXX W2DO? */ -@@ -1685,8 +1618,6 @@ - fprintf(stderr, "*** Glob(%s,0x%x,%p,%p)\n", pattern, (unsigned)flags, (void *)errfunc, pglob); - /*@=castfcnptr@*/ - switch (ut) { -- case URL_IS_HTTPS: -- case URL_IS_HTTP: - case URL_IS_FTP: - /*@-type@*/ - pglob->gl_closedir = Closedir; -@@ -1730,10 +1661,6 @@ +@@ -1787,10 +1746,6 @@ case URL_IS_FTP: return ftpOpendir(path); /*@notreached@*/ break; @@ -2329,7 +2197,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c case URL_IS_PATH: path = lpath; /*@fallthrough@*/ -@@ -1758,8 +1685,6 @@ +@@ -1815,8 +1770,6 @@ return NULL; if (ISAVMAGIC(dir)) return avReaddir(dir); @@ -2338,7 +2206,7 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c return readdir(dir); } -@@ -1771,8 +1696,6 @@ +@@ -1828,8 +1781,6 @@ return 0; if (ISAVMAGIC(dir)) return avClosedir(dir); @@ -2347,108 +2215,67 @@ diff -ur rpm-4.4.7.org/rpmio/rpmrpc.c rpm-4.4.7/rpmio/rpmrpc.c return closedir(dir); } -diff -ur rpm-4.4.7.org/rpmio/tget.c rpm-4.4.7/rpmio/tget.c ---- rpm-4.4.7.org/rpmio/tget.c 2004-11-19 17:52:58.000000000 +0100 -+++ rpm-4.4.7/rpmio/tget.c 2006-10-17 22:20:47.995427500 +0200 -@@ -9,8 +9,6 @@ - - static int _debug = 0; - --int noNeon; -- - #define HTTPSPATH "https://localhost/test.txt" - #define HTTPPATH "http://localhost/test.txt" - #define FTPPATH "ftp://localhost/test.txt" -@@ -40,8 +38,6 @@ - { "debug", 'd', POPT_ARG_VAL, &_debug, -1, NULL, NULL }, - { "ftpdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_ftp_debug, -1, - N_("debug protocol data stream"), NULL}, -- { "noneon", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &noNeon, 1, -- N_("disable use of libneon for HTTP"), NULL}, - { "rpmiodebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_rpmio_debug, -1, - N_("debug rpmio I/O"), NULL}, - { "urldebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_url_debug, -1, -diff -ur rpm-4.4.7.org/rpmio/tglob.c rpm-4.4.7/rpmio/tglob.c ---- rpm-4.4.7.org/rpmio/tglob.c 2004-11-19 17:53:05.000000000 +0100 -+++ rpm-4.4.7/rpmio/tglob.c 2006-10-17 22:21:01.712284750 +0200 -@@ -9,8 +9,6 @@ - - static int _debug = 0; - --int noNeon; -- - #define HTTPSPATH "https://localhost/rawhide/test/*.rpm" - #if 0 - #define HTTPPATH "http://localhost/rawhide/test/*.rpm" -@@ -52,8 +50,6 @@ - { "debug", 'd', POPT_ARG_VAL, &_debug, -1, NULL, NULL }, - { "ftpdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_ftp_debug, -1, - N_("debug protocol data stream"), NULL}, -- { "noneon", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &noNeon, 1, -- N_("disable use of libneon for HTTP"), NULL}, - { "rpmiodebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_rpmio_debug, -1, - N_("debug rpmio I/O"), NULL}, - { "urldebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_url_debug, -1, -diff -ur rpm-4.4.7.org/rpmio/thkp.c rpm-4.4.7/rpmio/thkp.c ---- rpm-4.4.7.org/rpmio/thkp.c 2005-01-04 17:35:12.000000000 +0100 -+++ rpm-4.4.7/rpmio/thkp.c 2006-10-17 22:21:10.696846250 +0200 -@@ -10,8 +10,6 @@ - static int _debug = 0; - static int _printing = 0; - --int noNeon; -- - #if 0 - #define HKPPATH "hkp://pgp.mit.edu:11371/pks/lookup?op=get&search=0xF5C75256" - #else -@@ -95,8 +93,6 @@ - N_("debug protocol data stream"), NULL}, - { "ftpdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_ftp_debug, -1, - N_("debug protocol data stream"), NULL}, -- { "noneon", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &noNeon, 1, -- N_("disable use of libneon for HTTP"), NULL}, - { "rpmiodebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_rpmio_debug, -1, - N_("debug rpmio I/O"), NULL}, - { "urldebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_url_debug, -1, -diff -ur rpm-4.4.7.org/rpmio/tput.c rpm-4.4.7/rpmio/tput.c ---- rpm-4.4.7.org/rpmio/tput.c 2004-11-19 17:53:11.000000000 +0100 -+++ rpm-4.4.7/rpmio/tput.c 2006-10-17 22:21:25.841792750 +0200 -@@ -9,8 +9,6 @@ +@@ -1852,14 +1803,6 @@ + case URL_IS_FTP: + return ftpRealpath(path, resolved_path); + /*@notreached@*/ break; +- case URL_IS_HTTPS: +- case URL_IS_HTTP: +- case URL_IS_HKP: +-#ifdef WITH_NEON +- return davRealpath(path, resolved_path); +- /*@notreached@*/ break; +-#endif +- /*@fallthrough@*/ + default: + return xstrdup(path); + /*@notreached@*/ break; +--- rpm-4.5/./rpmio/rpmio_internal.h~ 2008-06-10 02:19:26.000000000 +0300 ++++ rpm-4.5/./rpmio/rpmio_internal.h 2008-09-04 18:00:31.015598325 +0300 +@@ -182,7 +182,6 @@ + /*@dependent@*/ + void * url; /* ufdio: URL info */ + /*@relnull@*/ +- void * req; /* ufdio: HTTP request */ - static int _debug = 0; + int rd_timeoutsecs; /* ufdRead: per FD_t timer */ + ssize_t bytesRemain; /* ufdio: */ +--- rpm-4.5/rpmio/rpmurl.h~ 2008-06-10 02:19:26.000000000 +0300 ++++ rpm-4.5/rpmio/rpmurl.h 2008-09-04 18:14:00.546141703 +0300 +@@ -54,15 +54,6 @@ + /*@relnull@*/ + FD_t data; /*!< per-xfer data channel */ --int noNeon; -- - #define HTTPSPATH "https://localhost/rawhide/toad/tput.txt" - #define HTTPPATH "http://localhost/rawhide/toad/tput.txt" - #define FTPPATH "ftp://localhost/home/test/tput.txt" -@@ -100,8 +98,6 @@ - { "debug", 'd', POPT_ARG_VAL, &_debug, -1, NULL, NULL }, - { "ftpdebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_ftp_debug, -1, - N_("debug protocol data stream"), NULL}, -- { "noneon", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &noNeon, 1, -- N_("disable use of libneon for HTTP"), NULL}, - { "rpmiodebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_rpmio_debug, -1, - N_("debug rpmio I/O"), NULL}, - { "urldebug", '\0', POPT_ARG_VAL|POPT_ARGFLAG_DOC_HIDDEN, &_url_debug, -1, -diff -ur rpm-4.4.7.org/rpmio/url.c rpm-4.4.7/rpmio/url.c ---- rpm-4.4.7.org/rpmio/url.c 2006-08-06 02:31:18.000000000 +0200 -+++ rpm-4.4.7/rpmio/url.c 2006-10-17 22:21:51.747411750 +0200 -@@ -148,7 +148,6 @@ - } - if (u->sess != NULL) { - /* HACK: neon include has prototype. */ -- ne_session_destroy(u->sess); - u->sess = NULL; +-/*@relnull@*/ +- void * capabilities; /*!< neon: ne_server_capabilities ptr */ +-/*@relnull@*/ +- void * lockstore; /*!< neon: ne_lock_store ptr */ +-/*@relnull@*/ +- void * sess; /*!< neon: ne_session ptr */ +- off_t current; /*!< neon: current body offset. */ +- off_t total; /*!< neon: total body length. */ +- int connstatus; /*!< neon: connection status. */ + #ifdef REFERENCE + typedef enum { + ne_conn_namelookup, /* lookup up hostname (info = hostname) */ +--- rpm-4.5/rpmio/url.c~ 2008-06-10 02:19:26.000000000 +0300 ++++ rpm-4.5/rpmio/url.c 2008-09-04 20:05:19.011716915 +0300 +@@ -134,7 +134,6 @@ + (u->scheme ? u->scheme : "")); + /*@=usereleased@*/ } +- xx = davFree(u); u->buf = _free(u->buf); -@@ -352,9 +351,6 @@ - } urlstrings[] = { - { "file://", URL_IS_PATH }, - { "ftp://", URL_IS_FTP }, -- { "hkp://", URL_IS_HKP }, -- { "http://", URL_IS_HTTP }, -- { "https://", URL_IS_HTTPS }, - { "-", URL_IS_DASH }, - { NULL, URL_IS_UNKNOWN } - }; + u->url = _free(u->url); + u->scheme = _free((void *)u->scheme); +--- rpm-4.5/perl/Makefile.PL.in~ 2008-10-05 01:31:09.000000000 +0300 ++++ rpm-4.5/perl/Makefile.PL.in 2008-10-05 01:32:12.688278120 +0300 +@@ -12,7 +12,7 @@ + 'NAME' => 'RPM', + 'VERSION_FROM' => 'RPM.pm', # finds $VERSION + 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 +- 'LIBS' => [join(' ', @ldaddp) . ' ' . join(' ', @ldadd) . ' @LIBS@ @WITH_POPT_LIB@ @WITH_BEECRYPT_LIB@ -lneon'], ++ 'LIBS' => [join(' ', @ldaddp) . ' ' . join(' ', @ldadd) . ' @LIBS@ @WITH_POPT_LIB@ @WITH_BEECRYPT_LIB@'], + 'DEFINE' => join(" ", @defines), # e.g., '-DHAVE_SOMETHING' + 'INC' => join(' ', map { '-I@top_srcdir@/'. $_ } @libdir) . ' @CPPFLAGS@', + 'TYPEMAPS' => [ 'typemap' ],