Remove splint tags.
authorRalf Corsépius <corsepiu@fedoraproject.org>
Tue, 11 Sep 2007 14:48:54 +0000 (16:48 +0200)
committerRalf Corsépius <corsepiu@fedoraproject.org>
Tue, 11 Sep 2007 14:48:54 +0000 (16:48 +0200)
42 files changed:
rpmio/argv.c
rpmio/argv.h
rpmio/digest.c
rpmio/fts.c
rpmio/fts.h
rpmio/macro.c
rpmio/rpmdav.c
rpmio/rpmdav.h
rpmio/rpmerr.h
rpmio/rpmhook.c
rpmio/rpmhook.h
rpmio/rpmio.c
rpmio/rpmio.h
rpmio/rpmio_internal.h
rpmio/rpmlog.c
rpmio/rpmlog.h
rpmio/rpmlua.c
rpmio/rpmlua.h
rpmio/rpmmacro.h
rpmio/rpmmalloc.c
rpmio/rpmmessages.h
rpmio/rpmpgp.c
rpmio/rpmpgp.h
rpmio/rpmrpc.c
rpmio/rpmsq.c
rpmio/rpmsq.h
rpmio/rpmsw.c
rpmio/rpmsw.h
rpmio/rpmurl.h
rpmio/strcasecmp.c
rpmio/tax.c
rpmio/tdir.c
rpmio/tfts.c
rpmio/tget.c
rpmio/tglob.c
rpmio/thkp.c
rpmio/tinv.c
rpmio/tput.c
rpmio/tring.c
rpmio/ugid.c
rpmio/ugid.h
rpmio/url.c

index cc1ec3f..d112dfb 100644 (file)
@@ -8,15 +8,13 @@
 
 #include "debug.h"
 
-/*@-bounds@*/
 /**
  * Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
  * @param p            memory to free
  * @return             NULL always
  */
-/*@unused@*/ static inline /*@null@*/
-void * _free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
-       /*@modifies p @*/
+static inline
+void * _free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
@@ -47,15 +45,13 @@ ARGI_t argiFree(ARGI_t argi)
     return NULL;
 }
 
-ARGV_t argvFree(/*@only@*/ /*@null@*/ ARGV_t argv)
+ARGV_t argvFree(ARGV_t argv)
 {
     ARGV_t av;
     
-/*@-branchstate@*/
     if (argv)
     for (av = argv; *av; av++)
        *av = _free(*av);
-/*@=branchstate@*/
     argv = _free(argv);
     return NULL;
 }
@@ -87,17 +83,13 @@ int argvCount(const ARGV_t argv)
 
 ARGV_t argvData(const ARGV_t argv)
 {
-/*@-retalias -temptrans @*/
     return argv;
-/*@=retalias =temptrans @*/
 }
 
 int argvCmp(const void * a, const void * b)
 {
-/*@-boundsread@*/
     ARGstr_t astr = *(ARGV_t)a;
     ARGstr_t bstr = *(ARGV_t)b;
-/*@=boundsread@*/
     return strcmp(astr, bstr);
 }
 
@@ -119,7 +111,7 @@ ARGV_t argvSearch(ARGV_t argv, ARGstr_t val,
     return bsearch(&val, argv, argvCount(argv), sizeof(*argv), compar);
 }
 
-int argiAdd(/*@out@*/ ARGI_t * argip, int ix, int val)
+int argiAdd(ARGI_t * argip, int ix, int val)
 {
     ARGI_t argi;
 
@@ -140,7 +132,7 @@ int argiAdd(/*@out@*/ ARGI_t * argip, int ix, int val)
     return 0;
 }
 
-int argvAdd(/*@out@*/ ARGV_t * argvp, ARGstr_t val)
+int argvAdd(ARGV_t * argvp, ARGstr_t val)
 {
     ARGV_t argv;
     int argc;
@@ -148,16 +140,14 @@ int argvAdd(/*@out@*/ ARGV_t * argvp, ARGstr_t val)
     if (argvp == NULL)
        return -1;
     argc = argvCount(*argvp);
-/*@-unqualifiedtrans@*/
     *argvp = xrealloc(*argvp, (argc + 1 + 1) * sizeof(**argvp));
-/*@=unqualifiedtrans@*/
     argv = *argvp;
     argv[argc++] = xstrdup(val);
     argv[argc  ] = NULL;
     return 0;
 }
 
-int argvAppend(/*@out@*/ ARGV_t * argvp, const ARGV_t av)
+int argvAppend(ARGV_t * argvp, const ARGV_t av)
 {
     ARGV_t argv = *argvp;
     int argc = argvCount(argv);
@@ -200,8 +190,5 @@ int argvSplit(ARGV_t * argvp, const char * str, const char * seps)
     }
     argv[c] = NULL;
     *argvp = argv;
-/*@-nullstate@*/
     return 0;
-/*@=nullstate@*/
 }
-/*@=bounds@*/
index 7cab8f2..e944754 100644 (file)
@@ -25,61 +25,49 @@ extern "C" {
  * @param argv         argv array
  * @param fp           output file handle (NULL uses stderr)
  */
-void argvPrint(const char * msg, ARGV_t argv, FILE * fp)
-       /*@globals fileSystem @*/
-       /*@modifies *fp, fileSystem @*/;
+void argvPrint(const char * msg, ARGV_t argv, FILE * fp);
 
 /**
  * Destroy an argi array.
  * @param argi         argi array
  * @return             NULL always
  */
-/*@null@*/
-ARGI_t argiFree(/*@only@*/ /*@null@*/ ARGI_t argi)
-       /*@modifies argi @*/;
+ARGI_t argiFree(ARGI_t argi);
 
 /**
  * Destroy an argv array.
  * @param argv         argv array
  * @return             NULL always
  */
-/*@null@*/
-ARGV_t argvFree(/*@only@*/ /*@null@*/ ARGV_t argv)
-       /*@modifies argv @*/;
+ARGV_t argvFree(ARGV_t argv);
 
 /**
  * Return no. of elements in argi array.
  * @param argi         argi array
  * @return             no. of elements
  */
-int argiCount(/*@null@*/ const ARGI_t argi)
-       /*@*/;
+int argiCount(const ARGI_t argi);
 
 /**
  * Return data from argi array.
  * @param argi         argi array
  * @return             argi array data address
  */
-/*@null@*/
-ARGint_t argiData(/*@null@*/ const ARGI_t argi)
-       /*@*/;
+ARGint_t argiData(const ARGI_t argi);
 
 /**
  * Return no. of elements in argv array.
  * @param argv         argv array
  * @return             no. of elements
  */
-int argvCount(/*@null@*/ const ARGV_t argv)
-       /*@*/;
+int argvCount(const ARGV_t argv);
 
 /**
  * Return data from argv array.
  * @param argv         argv array
  * @return             argv array data address
  */
-/*@null@*/
-ARGV_t argvData(/*@null@*/ const ARGV_t argv)
-       /*@*/;
+ARGV_t argvData(const ARGV_t argv);
 
 /**
  * Compare argv arrays (qsort/bsearch).
@@ -87,10 +75,7 @@ ARGV_t argvData(/*@null@*/ const ARGV_t argv)
  * @param b            2nd instance address
  * @return             result of comparison
  */
-/*@-exportlocal@*/
-int argvCmp(const void * a, const void * b)
-       /*@*/;
-/*@=exportlocal@*/
+int argvCmp(const void * a, const void * b);
 
 /**
  * Sort an argv array.
@@ -98,8 +83,7 @@ int argvCmp(const void * a, const void * b)
  * @param compar       strcmp-like comparison function, or NULL for argvCmp()
  * @return             0 always
  */
-int argvSort(ARGV_t argv, int (*compar)(const void *, const void *))
-       /*@modifies *argv @*/;
+int argvSort(ARGV_t argv, int (*compar)(const void *, const void *));
 
 /**
  * Find an element in an argv array.
@@ -108,10 +92,8 @@ int argvSort(ARGV_t argv, int (*compar)(const void *, const void *))
  * @param compar       strcmp-like comparison function, or NULL for argvCmp()
  * @return             found string (NULL on failure)
  */
-/*@dependent@*/ /*@null@*/
 ARGV_t argvSearch(ARGV_t argv, ARGstr_t val,
-               int (*compar)(const void *, const void *))
-       /*@*/;
+               int (*compar)(const void *, const void *));
 
 /**
  * Add an int to an argi array.
@@ -120,8 +102,7 @@ ARGV_t argvSearch(ARGV_t argv, ARGstr_t val,
  * @param val          int arg to add
  * @return             0 always
  */
-int argiAdd(/*@out@*/ ARGI_t * argip, int ix, int val)
-       /*@modifies *argip @*/;
+int argiAdd(ARGI_t * argip, int ix, int val);
 
 /**
  * Add a string to an argv array.
@@ -129,8 +110,7 @@ int argiAdd(/*@out@*/ ARGI_t * argip, int ix, int val)
  * @param val          string arg to append
  * @return             0 always
  */
-int argvAdd(/*@out@*/ ARGV_t * argvp, ARGstr_t val)
-       /*@modifies *argvp @*/;
+int argvAdd(ARGV_t * argvp, ARGstr_t val);
 
 /**
  * Append one argv array to another.
@@ -138,8 +118,7 @@ int argvAdd(/*@out@*/ ARGV_t * argvp, ARGstr_t val)
  * @param av           argv array to append
  * @return             0 always
  */
-int argvAppend(/*@out@*/ ARGV_t * argvp, const ARGV_t av)
-       /*@modifies *argvp @*/;
+int argvAppend(ARGV_t * argvp, const ARGV_t av);
 
 /**
  * Split a string into an argv array.
@@ -148,8 +127,7 @@ int argvAppend(/*@out@*/ ARGV_t * argvp, const ARGV_t av)
  * @param seps         seperator characters
  * @return             0 always
  */
-int argvSplit(ARGV_t * argvp, const char * str, const char * seps)
-       /*@modifies *argvp @*/;
+int argvSplit(ARGV_t * argvp, const char * str, const char * seps);
 
 #ifdef __cplusplus
 }
index 5b4cde8..1692738 100644 (file)
@@ -12,7 +12,6 @@
 #define        DPRINTF(_a)
 #endif
 
-/*@access DIGEST_CTX@*/
 
 /**
  * MD5/SHA1 digest private data.
@@ -27,11 +26,10 @@ struct DIGEST_CTX_s {
        /*@modifies param @*/;  /*!< Digest initialize. */
     int (*Update) (void * param, const byte * data, size_t size)
        /*@modifies param @*/;  /*!< Digest transform. */
-    int (*Digest) (void * param, /*@out@*/ byte * digest)
+    int (*Digest) (void * param, byte * digest)
        /*@modifies param, digest @*/;  /*!< Digest finish. */
 };
 
-/*@-boundsread@*/
 DIGEST_CTX
 rpmDigestDup(DIGEST_CTX octx)
 {
@@ -40,7 +38,6 @@ rpmDigestDup(DIGEST_CTX octx)
     nctx->param = memcpy(xcalloc(1, nctx->paramlen), octx->param, nctx->paramlen);
     return nctx;
 }
-/*@=boundsread@*/
 
 DIGEST_CTX
 rpmDigestInit(pgpHashAlgo hashalgo, rpmDigestFlags flags)
@@ -54,68 +51,58 @@ rpmDigestInit(pgpHashAlgo hashalgo, rpmDigestFlags flags)
     case PGPHASHALGO_MD5:
        ctx->digestlen = 16;
        ctx->datalen = 64;
-/*@-sizeoftype@*/ /* FIX: union, not void pointer */
+/* FIX: union, not void pointer */
        ctx->paramlen = sizeof(md5Param);
-/*@=sizeoftype@*/
        ctx->param = xcalloc(1, ctx->paramlen);
-/*@-type@*/ /* FIX: cast? */
+/* FIX: cast? */
        ctx->Reset = (void *) md5Reset;
        ctx->Update = (void *) md5Update;
        ctx->Digest = (void *) md5Digest;
-/*@=type@*/
        break;
     case PGPHASHALGO_SHA1:
        ctx->digestlen = 20;
        ctx->datalen = 64;
-/*@-sizeoftype@*/ /* FIX: union, not void pointer */
+/* FIX: union, not void pointer */
        ctx->paramlen = sizeof(sha1Param);
-/*@=sizeoftype@*/
        ctx->param = xcalloc(1, ctx->paramlen);
-/*@-type@*/ /* FIX: cast? */
+/* FIX: cast? */
        ctx->Reset = (void *) sha1Reset;
        ctx->Update = (void *) sha1Update;
        ctx->Digest = (void *) sha1Digest;
-/*@=type@*/
        break;
 #if HAVE_BEECRYPT_API_H
     case PGPHASHALGO_SHA256:
        ctx->digestlen = 32;
        ctx->datalen = 64;
-/*@-sizeoftype@*/ /* FIX: union, not void pointer */
+/* FIX: union, not void pointer */
        ctx->paramlen = sizeof(sha256Param);
-/*@=sizeoftype@*/
        ctx->param = xcalloc(1, ctx->paramlen);
-/*@-type@*/ /* FIX: cast? */
+/* FIX: cast? */
        ctx->Reset = (void *) sha256Reset;
        ctx->Update = (void *) sha256Update;
        ctx->Digest = (void *) sha256Digest;
-/*@=type@*/
        break;
     case PGPHASHALGO_SHA384:
        ctx->digestlen = 48;
        ctx->datalen = 128;
-/*@-sizeoftype@*/ /* FIX: union, not void pointer */
+/* FIX: union, not void pointer */
        ctx->paramlen = sizeof(sha384Param);
-/*@=sizeoftype@*/
        ctx->param = xcalloc(1, ctx->paramlen);
-/*@-type@*/ /* FIX: cast? */
+/* FIX: cast? */
        ctx->Reset = (void *) sha384Reset;
        ctx->Update = (void *) sha384Update;
        ctx->Digest = (void *) sha384Digest;
-/*@=type@*/
        break;
     case PGPHASHALGO_SHA512:
        ctx->digestlen = 64;
        ctx->datalen = 128;
-/*@-sizeoftype@*/ /* FIX: union, not void pointer */
+/* FIX: union, not void pointer */
        ctx->paramlen = sizeof(sha512Param);
-/*@=sizeoftype@*/
        ctx->param = xcalloc(1, ctx->paramlen);
-/*@-type@*/ /* FIX: cast? */
+/* FIX: cast? */
        ctx->Reset = (void *) sha512Reset;
        ctx->Update = (void *) sha512Update;
        ctx->Digest = (void *) sha512Digest;
-/*@=type@*/
        break;
 #endif
     case PGPHASHALGO_RIPEMD160:
@@ -125,18 +112,16 @@ rpmDigestInit(pgpHashAlgo hashalgo, rpmDigestFlags flags)
     default:
        free(ctx);
        return NULL;
-       /*@notreached@*/ break;
+       break;
     }
 
-/*@-boundsread@*/
     xx = (*ctx->Reset) (ctx->param);
-/*@=boundsread@*/
 
 DPRINTF((stderr, "*** Init(%x) ctx %p param %p\n", flags, ctx, ctx->param));
     return ctx;
 }
 
-/*@-mustmod@*/ /* LCL: ctx->param may be modified, but ctx is abstract @*/
+/* LCL: ctx->param may be modified, but ctx is abstract @*/
 int
 rpmDigestUpdate(DIGEST_CTX ctx, const void * data, size_t len)
 {
@@ -144,13 +129,9 @@ rpmDigestUpdate(DIGEST_CTX ctx, const void * data, size_t len)
        return -1;
 
 DPRINTF((stderr, "*** Update(%p,%p,%d) param %p \"%s\"\n", ctx, data, len, ctx->param, ((char *)data)));
-/*@-boundsread@*/
     return (*ctx->Update) (ctx->param, data, len);
-/*@=boundsread@*/
 }
-/*@=mustmod@*/
 
-/*@-boundswrite@*/
 int
 rpmDigestFinal(DIGEST_CTX ctx, void ** datap, size_t *lenp, int asAscii)
 {
@@ -163,12 +144,10 @@ rpmDigestFinal(DIGEST_CTX ctx, void ** datap, size_t *lenp, int asAscii)
     digest = xmalloc(ctx->digestlen);
 
 DPRINTF((stderr, "*** Final(%p,%p,%p,%d) param %p digest %p\n", ctx, datap, lenp, asAscii, ctx->param, digest));
-/*@-noeffectuncon@*/ /* FIX: check rc */
+/* FIX: check rc */
     (void) (*ctx->Digest) (ctx->param, digest);
-/*@=noeffectuncon@*/
 
     /* Return final digest. */
-/*@-branchstate@*/
     if (!asAscii) {
        if (lenp) *lenp = ctx->digestlen;
        if (datap) {
@@ -189,7 +168,6 @@ DPRINTF((stderr, "*** Final(%p,%p,%p,%d) param %p digest %p\n", ctx, datap, lenp
            *t = '\0';
        }
     }
-/*@=branchstate@*/
     if (digest) {
        memset(digest, 0, ctx->digestlen);      /* In case it's sensitive */
        free(digest);
@@ -200,4 +178,3 @@ DPRINTF((stderr, "*** Final(%p,%p,%p,%d) param %p digest %p\n", ctx, datap, lenp
     free(ctx);
     return 0;
 }
-/*@=boundswrite@*/
index 4ce33fe..047038f 100644 (file)
@@ -1,6 +1,3 @@
-/*@-boundsread@*/
-/*@-sysunrecog -noeffectuncon -nullpass -sizeoftype -unrecog -usereleased @*/
-/*@-compdef -compmempass -dependenttrans -retalias @*/
 /*-
  * Copyright (c) 1990, 1993, 1994
  *     The Regents of the University of California.  All rights reserved.
@@ -87,31 +84,17 @@ static char sccsid[] = "@(#)fts.c   8.6 (Berkeley) 8/14/94";
 #endif
 
 
-/*@only@*/ /*@null@*/
-static FTSENT *        fts_alloc(FTS * sp, const char * name, int namelen)
-       /*@*/;
-/*@null@*/
-static FTSENT *        fts_build(FTS * sp, int type)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *sp, fileSystem, internalState @*/;
-static void    fts_lfree(/*@only@*/ FTSENT * head)
-       /*@modifies head @*/;
-static void    fts_load(FTS * sp, FTSENT * p)
-       /*@modifies *sp, *p @*/;
-static size_t  fts_maxarglen(char * const * argv)
-       /*@*/;
-static void    fts_padjust(FTS * sp, FTSENT * head)
-       /*@modifies *sp, *head @*/;
-static int     fts_palloc(FTS * sp, size_t more)
-       /*@modifies *sp @*/;
-static FTSENT *        fts_sort(FTS * sp, /*@returned@*/ FTSENT * head, int nitems)
-       /*@modifies *sp @*/;
-static u_short fts_stat(FTS * sp, FTSENT * p, int follow)
-       /*@modifies *p @*/;
+static FTSENT *        fts_alloc(FTS * sp, const char * name, int namelen);
+static FTSENT *        fts_build(FTS * sp, int type);
+static void    fts_lfree(FTSENT * head);
+static void    fts_load(FTS * sp, FTSENT * p);
+static size_t  fts_maxarglen(char * const * argv);
+static void    fts_padjust(FTS * sp, FTSENT * head);
+static int     fts_palloc(FTS * sp, size_t more);
+static FTSENT *        fts_sort(FTS * sp, FTSENT * head, int nitems);
+static u_short fts_stat(FTS * sp, FTSENT * p, int follow);
 static int      fts_safe_changedir(FTS * sp, FTSENT * p, int fd,
-                       const char * path)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+                       const char * path);
 
 #ifndef MAX
 #define MAX(a, b)      ({ __typeof__ (a) _a = (a); \
@@ -144,9 +127,7 @@ Fts_open(char * const * argv, int options,
 
        /* Options check. */
        if (options & ~FTS_OPTIONMASK) {
-/*@-boundswrite@*/
                __set_errno (EINVAL);
-/*@=boundswrite@*/
                return (NULL);
        }
 
@@ -185,9 +166,7 @@ Fts_open(char * const * argv, int options,
        for (root = NULL, nitems = 0; *argv != NULL; ++argv, ++nitems) {
                /* Don't allow zero-length paths. */
                if ((len = strlen(*argv)) == 0) {
-/*@-boundswrite@*/
                        __set_errno (ENOENT);
-/*@=boundswrite@*/
                        goto mem3;
                }
 
@@ -195,19 +174,17 @@ Fts_open(char * const * argv, int options,
                switch (urlIsURL(*argv)) {
                case URL_IS_DASH:
                case URL_IS_HKP:
-/*@-boundswrite@*/
                        __set_errno (ENOENT);
-/*@=boundswrite@*/
                        goto mem3;
-                       /*@notreached@*/ /*@switchbreak@*/ break;
+                       break;
                case URL_IS_HTTPS:
                case URL_IS_HTTP:
                case URL_IS_FTP:
                        SET(FTS_NOCHDIR);
-                       /*@switchbreak@*/ break;
+                       break;
                case URL_IS_UNKNOWN:
                case URL_IS_PATH:
-                       /*@switchbreak@*/ break;
+                       break;
                }
 
                p = fts_alloc(sp, *argv, len);
@@ -240,10 +217,8 @@ Fts_open(char * const * argv, int options,
                        }
                }
        }
-       /*@-branchstate@*/
        if (compar && nitems > 1)
                root = fts_sort(sp, root, nitems);
-       /*@=branchstate@*/
 
        /*
         * Allocate a dummy pointer and make fts_read think that we've just
@@ -289,7 +264,6 @@ fts_load(FTS * sp, FTSENT * p)
         * known that the path will fit.
         */
        len = p->fts_pathlen = p->fts_namelen;
-/*@-boundswrite@*/
        memmove(sp->fts_path, p->fts_name, len + 1);
        if ((cp = strrchr(p->fts_name, '/')) && (cp != p->fts_name || cp[1])) {
                len = strlen(++cp);
@@ -298,7 +272,6 @@ fts_load(FTS * sp, FTSENT * p)
        }
        p->fts_accpath = p->fts_path = sp->fts_path;
        sp->fts_dev = p->fts_dev;
-/*@=boundswrite@*/
 }
 
 int
@@ -315,7 +288,6 @@ Fts_close(FTS * sp)
         * points to the root list, so we step through to the end of the root
         * list which has a valid parent pointer.
         */
-       /*@-branchstate@*/
        if (sp->fts_cur) {
                for (p = sp->fts_cur; p->fts_level >= FTS_ROOTLEVEL;) {
                        freep = p;
@@ -324,7 +296,6 @@ Fts_close(FTS * sp)
                }
                free(p);
        }
-       /*@=branchstate@*/
 
        /* Free up child linked list, sort array, path buffer. */
        if (sp->fts_child)
@@ -342,9 +313,7 @@ Fts_close(FTS * sp)
                if (saved_errno != 0) {
                        /* Free up the stream pointer. */
                        free(sp);
-/*@-boundswrite@*/
                        __set_errno (saved_errno);
-/*@=boundswrite@*/
                        return (-1);
                }
        }
@@ -461,7 +430,6 @@ Fts_read(FTS * sp)
        }
 
        /* Move to the next node on this level. */
-/*@-boundswrite@*/
 next:  tmp = p;
        if ((p = p->fts_link) != NULL) {
                free(tmp);
@@ -486,7 +454,6 @@ next:       tmp = p;
                 */
                if (p->fts_instr == FTS_SKIP)
                        goto next;
-               /*@-branchstate@*/
                if (p->fts_instr == FTS_FOLLOW) {
                        p->fts_info = fts_stat(sp, p, 1);
                        if (p->fts_info == FTS_D && !ISSET(FTS_NOCHDIR)) {
@@ -499,7 +466,6 @@ next:       tmp = p;
                        }
                        p->fts_instr = FTS_NOINSTR;
                }
-               /*@=branchstate@*/
 
 name:          t = sp->fts_path + NAPPEND(p->fts_parent);
                *t++ = '/';
@@ -523,7 +489,6 @@ name:               t = sp->fts_path + NAPPEND(p->fts_parent);
 
        /* NUL terminate the pathname. */
        sp->fts_path[p->fts_pathlen] = '\0';
-/*@=boundswrite@*/
 
        /*
         * Return to the parent directory.  If at a root node or came through
@@ -539,9 +504,7 @@ name:               t = sp->fts_path + NAPPEND(p->fts_parent);
                if (FCHDIR(sp, p->fts_symfd)) {
                        saved_errno = errno;
                        (void)__close(p->fts_symfd);
-/*@-boundswrite@*/
                        __set_errno (saved_errno);
-/*@=boundswrite@*/
                        SET(FTS_STOP);
                        return (NULL);
                }
@@ -562,13 +525,11 @@ name:             t = sp->fts_path + NAPPEND(p->fts_parent);
  * reasons.
  */
 int
-Fts_set(/*@unused@*/ FTS * sp, FTSENT * p, int instr)
+Fts_set(FTS * sp, FTSENT * p, int instr)
 {
        if (instr != 0 && instr != FTS_AGAIN && instr != FTS_FOLLOW &&
            instr != FTS_NOINSTR && instr != FTS_SKIP) {
-/*@-boundswrite@*/
                __set_errno (EINVAL);
-/*@=boundswrite@*/
                return (1);
        }
        p->fts_instr = instr;
@@ -582,9 +543,7 @@ Fts_children(FTS * sp, int instr)
        int fd;
 
        if (instr != 0 && instr != FTS_NAMEONLY) {
-/*@-boundswrite@*/
                __set_errno (EINVAL);
-/*@=boundswrite@*/
                return (NULL);
        }
 
@@ -595,9 +554,7 @@ Fts_children(FTS * sp, int instr)
         * Errno set to 0 so user can distinguish empty directory from
         * an error.
         */
-/*@-boundswrite@*/
        __set_errno (0);
-/*@=boundswrite@*/
 
        /* Fatal errors stop here. */
        if (ISSET(FTS_STOP))
@@ -760,9 +717,7 @@ fts_build(FTS * sp, int type)
        len = NAPPEND(cur);
        if (ISSET(FTS_NOCHDIR)) {
                cp = sp->fts_path + len;
-/*@-boundswrite@*/
                *cp++ = '/';
-/*@=boundswrite@*/
        } else {
                /* GCC, you're too verbose. */
                cp = NULL;
@@ -892,10 +847,8 @@ mem1:                              saved_errno = errno;
        if (ISSET(FTS_NOCHDIR)) {
                if (len == sp->fts_pathlen || nitems == 0)
                        --cp;
-/*@-boundswrite@*/
                if (cp != NULL) /* XXX can't happen */
                        *cp = '\0';
-/*@=boundswrite@*/
        }
 
        /*
@@ -959,9 +912,7 @@ fts_stat(FTS * sp, FTSENT * p, int follow)
                if ((*sp->fts_stat) (p->fts_accpath, sbp)) {
                        saved_errno = errno;
                        if (!(*sp->fts_lstat) (p->fts_accpath, sbp)) {
-/*@-boundswrite@*/
                                __set_errno (0);
-/*@=boundswrite@*/
                                return (FTS_SLNONE);
                        }
                        p->fts_errno = saved_errno;
@@ -969,9 +920,7 @@ fts_stat(FTS * sp, FTSENT * p, int follow)
                }
        } else if ((*sp->fts_lstat) (p->fts_accpath, sbp)) {
                p->fts_errno = errno;
-/*@-boundswrite@*/
 err:           memset(sbp, 0, sizeof(*sbp));
-/*@=boundswrite@*/
                return (FTS_NS);
        }
 
@@ -1037,7 +986,6 @@ fts_sort(FTS * sp, FTSENT * head, int nitems)
                }
                sp->fts_array = a;
        }
-/*@-boundswrite@*/
        for (ap = sp->fts_array, p = head; p != NULL; p = p->fts_link)
                *ap++ = p;
        qsort((void *)sp->fts_array, nitems, sizeof(*sp->fts_array),
@@ -1045,7 +993,6 @@ fts_sort(FTS * sp, FTSENT * head, int nitems)
        for (head = *(ap = sp->fts_array); --nitems; ++ap)
                ap[0]->fts_link = ap[1];
        ap[0]->fts_link = NULL;
-/*@=boundswrite@*/
        return (head);
 }
 
@@ -1070,10 +1017,8 @@ fts_alloc(FTS * sp, const char * name, int namelen)
                return (NULL);
 
        /* Copy the name and guarantee NUL termination. */
-/*@-boundswrite@*/
        memmove(p->fts_name, name, namelen);
        p->fts_name[namelen] = '\0';
-/*@=boundswrite@*/
 
        if (!ISSET(FTS_NOSTAT))
                p->fts_statp = (struct stat *)ALIGN(p->fts_name + namelen + 2);
@@ -1093,12 +1038,10 @@ fts_lfree(FTSENT * head)
        register FTSENT *p;
 
        /* Free a linked list of structures. */
-       /*@-branchstate@*/
        while ((p = head)) {
                head = head->fts_link;
                free(p);
        }
-       /*@=branchstate@*/
 }
 
 /*
@@ -1124,9 +1067,7 @@ fts_palloc(FTS * sp, size_t more)
                        sp->fts_path = NULL;
                }
                sp->fts_path = NULL;
-/*@-boundswrite@*/
                __set_errno (ENAMETOOLONG);
-/*@=boundswrite@*/
                return (1);
        }
        p = realloc(sp->fts_path, sp->fts_pathlen);
@@ -1199,9 +1140,7 @@ fts_safe_changedir(FTS * sp, FTSENT * p, int fd, const char * path)
                goto bail;
        }
        if (p->fts_dev != sb.st_dev || p->fts_ino != sb.st_ino) {
-/*@-boundswrite@*/
                __set_errno (ENOENT);           /* disinformation */
-/*@=boundswrite@*/
                ret = -1;
                goto bail;
        }
@@ -1210,11 +1149,6 @@ bail:
        oerrno = errno;
        if (fd < 0)
                (void)__close(newfd);
-/*@-boundswrite@*/
        __set_errno (oerrno);
-/*@=boundswrite@*/
        return (ret);
 }
-/*@=compdef =compmempass =dependenttrans =retalias @*/
-/*@=sysunrecog =noeffectuncon =nullpass =sizeoftype =unrecog =usereleased @*/
-/*@=boundsread@*/
index eaa4a8b..9d982ae 100644 (file)
 #include <dirent.h>
 
 typedef struct {
-/*@owned@*/ /*@relnull@*/
        struct _ftsent *fts_cur;        /*!< current node */
-/*@owned@*/ /*@null@*/
        struct _ftsent *fts_child;      /*!< linked list of children */
-/*@owned@*/ /*@null@*/
        struct _ftsent **fts_array;     /*!< sort array */
        dev_t fts_dev;                  /*!< starting device # */
-/*@owned@*/ /*@relnull@*/
        char *fts_path;                 /*!< path for this descent */
        int fts_rfd;                    /*!< fd for root */
        int fts_pathlen;                /*!< sizeof(path) */
        int fts_nitems;                 /*!< elements in the sort array */
-/*@null@*/
-       int (*fts_compar) (const void *, const void *)
-               /*@*/;                  /*!< compare fn */
-
-       DIR * (*fts_opendir) (const char * path)
-               /*@globals fileSystem @*/
-               /*@modifies fileSystem @*/;
-       struct dirent * (*fts_readdir) (DIR * dir)
-               /*@globals fileSystem @*/
-               /*@modifies *dir, fileSystem @*/;
-       int (*fts_closedir) (/*@only@*/ DIR * dir)
-               /*@globals fileSystem @*/
-               /*@modifies *dir, fileSystem @*/;
-       int (*fts_stat) (const char * path, /*@out@*/ struct stat * st)
-               /*@globals fileSystem @*/
-               /*@modifies *st, fileSystem @*/;
-       int (*fts_lstat) (const char * path, /*@out@*/ struct stat * st)
-               /*@globals fileSystem @*/
-               /*@modifies *st, fileSystem @*/;
+       int (*fts_compar) (const void *, const void *);                 /*!< compare fn */
+
+       DIR * (*fts_opendir) (const char * path);
+       struct dirent * (*fts_readdir) (DIR * dir);
+       int (*fts_closedir) (DIR * dir);
+       int (*fts_stat) (const char * path, struct stat * st);
+       int (*fts_lstat) (const char * path, struct stat * st);
 
 #define        FTS_COMFOLLOW   0x0001          /* follow command line symlinks */
 #define        FTS_LOGICAL     0x0002          /* logical walk */
@@ -114,18 +98,12 @@ typedef struct {
 } FTS;
 
 typedef struct _ftsent {
-/*@dependent@*/
        struct _ftsent *fts_cycle;      /*!< cycle node */
-/*@dependent@*/ /*@relnull@*/
        struct _ftsent *fts_parent;     /*!< parent directory */
-/*@dependent@*/ /*@null@*/
        struct _ftsent *fts_link;       /*!< next file in directory */
        long fts_number;                /*!< local numeric value */
-/*@null@*/
        void *fts_pointer;              /*!< local address value */
-/*@dependent@*/
        char *fts_accpath;              /*!< access path */
-/*@dependent@*/
        char *fts_path;                 /*!< root path */
        int fts_errno;                  /*!< errno for this node */
        int fts_symfd;                  /*!< fd for symlink */
@@ -166,7 +144,6 @@ typedef struct _ftsent {
 #define        FTS_SKIP         4              /* discard node */
        u_short fts_instr;              /*!< fts_set() instructions */
 
-/*@dependent@*/
        struct stat *fts_statp;         /*!< stat(2) information */
        char fts_name[1];               /*!< file name */
 } FTSENT;
@@ -179,19 +156,16 @@ __BEGIN_DECLS
  * @param instr
  * @return             file set member
  */
-/*@dependent@*/ /*@null@*/
 FTSENT *Fts_children (FTS * sp, int instr) __THROW
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *sp, fileSystem, internalState @*/;
+;
 
 /**
  * Destroy a file hierarchy traversal handle.
  * @param sp           file hierarchy state
  * @return             0 on sucess, -1 on error
  */
-int     Fts_close (/*@only@*/ /*@null@*/ FTS * sp) __THROW
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *sp, fileSystem, internalState @*/;
+int     Fts_close (FTS * sp) __THROW
+;
 
 /**
  * Create a handle for file hierarchy traversal.
@@ -200,21 +174,17 @@ int        Fts_close (/*@only@*/ /*@null@*/ FTS * sp) __THROW
  * @param compar       traversal ordering (or NULL)
  * @return             file hierarchy state (or NULL on error)
  */
-/*@only@*/ /*@null@*/
 FTS    *Fts_open (char * const * argv, int options,
-                  /*@null@*/
                   int (*compar) (const FTSENT **, const FTSENT **)) __THROW
-       /*@*/;
+       ;
 
 /**
  * Return next node in the file hierarchy traversal.
  * @param sp           file hierarchy state
  * @return             file set member
  */
-/*@null@*/
-FTSENT *Fts_read (/*@null@*/ FTS * sp) __THROW
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *sp, fileSystem, internalState @*/;
+FTSENT *Fts_read (FTS * sp) __THROW
+;
 
 /**
  * Modify the traversal for a file set member.
@@ -224,7 +194,7 @@ FTSENT      *Fts_read (/*@null@*/ FTS * sp) __THROW
  * @return             0 on sucess, -1 on error
  */
 int     Fts_set (FTS * sp, FTSENT * p, int instr) __THROW
-       /*@modifies *p @*/;
+;
 
 __END_DECLS
 
index 462ee74..dc2907c 100644 (file)
@@ -1,4 +1,3 @@
-/*@-boundsread@*/
 /** \ingroup rpmrc rpmio
  * \file rpmio/macro.c
  */
@@ -55,54 +54,38 @@ typedef     FILE * FD_t;
 #include "debug.h"
 
 /*@access FD_t@*/              /* XXX compared with NULL */
-/*@access MacroContext@*/
-/*@access MacroEntry@*/
-/*@access rpmlua @*/
 
 static struct MacroContext_s rpmGlobalMacroContext_s;
-/*@-compmempass@*/
 MacroContext rpmGlobalMacroContext = &rpmGlobalMacroContext_s;
-/*@=compmempass@*/
 
 static struct MacroContext_s rpmCLIMacroContext_s;
-/*@-compmempass@*/
 MacroContext rpmCLIMacroContext = &rpmCLIMacroContext_s;
-/*@=compmempass@*/
 
 /**
  * Macro expansion state.
  */
-typedef /*@abstract@*/ struct MacroBuf_s {
-/*@kept@*/ /*@exposed@*/
+typedef struct MacroBuf_s {
     const char * s;            /*!< Text to expand. */
-/*@shared@*/
     char * t;                  /*!< Expansion buffer. */
     size_t nb;                 /*!< No. bytes remaining in expansion buffer. */
     int depth;                 /*!< Current expansion depth. */
     int macro_trace;           /*!< Pre-print macro to expand? */
     int expand_trace;          /*!< Post-print macro expansion? */
-/*@kept@*/ /*@exposed@*/ /*@null@*/
     void * spec;               /*!< (future) %file expansion info?. */
-/*@kept@*/ /*@exposed@*/
     MacroContext mc;
 } * MacroBuf;
 
 #define SAVECHAR(_mb, _c) { *(_mb)->t = (_c), (_mb)->t++, (_mb)->nb--; }
 
-/*@-exportlocal -exportheadervar@*/
 
 #define        _MAX_MACRO_DEPTH        16
-/*@unchecked@*/
 int max_macro_depth = _MAX_MACRO_DEPTH;
 
 #define        _PRINT_MACRO_TRACE      0
-/*@unchecked@*/
 int print_macro_trace = _PRINT_MACRO_TRACE;
 
 #define        _PRINT_EXPAND_TRACE     0
-/*@unchecked@*/
 int print_expand_trace = _PRINT_EXPAND_TRACE;
-/*@=exportlocal =exportheadervar@*/
 
 #define        MACRO_CHUNK_SIZE        16
 
@@ -118,9 +101,8 @@ static int expandMacro(MacroBuf mb)
  * @param p            memory to free
  * @retval             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ const void * p)
-       /*@modifies p@*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
@@ -136,7 +118,6 @@ _free(/*@only@*/ /*@null@*/ const void * p)
  */
 static int
 compareMacroName(const void * ap, const void * bp)
-       /*@*/
 {
     MacroEntry ame = *((MacroEntry *)ap);
     MacroEntry bme = *((MacroEntry *)bp);
@@ -154,10 +135,8 @@ compareMacroName(const void * ap, const void * bp)
  * Enlarge macro table.
  * @param mc           macro context
  */
-/*@-boundswrite@*/
 static void
 expandMacroTable(MacroContext mc)
-       /*@modifies mc @*/
 {
     if (mc->macroTable == NULL) {
        mc->macrosAllocated = MACRO_CHUNK_SIZE;
@@ -172,7 +151,6 @@ expandMacroTable(MacroContext mc)
     }
     memset(&mc->macroTable[mc->firstFree], 0, MACRO_CHUNK_SIZE * sizeof(*(mc->macroTable)));
 }
-/*@=boundswrite@*/
 
 /**
  * Sort entries in macro table.
@@ -180,7 +158,6 @@ expandMacroTable(MacroContext mc)
  */
 static void
 sortMacroTable(MacroContext mc)
-       /*@modifies mc @*/
 {
     int i;
 
@@ -239,23 +216,17 @@ rpmDumpMacroTable(MacroContext mc, FILE * fp)
  * @param namelen      no. of bytes
  * @return             address of slot in macro table with name (or NULL)
  */
-/*@-boundswrite@*/
-/*@dependent@*/ /*@null@*/
 static MacroEntry *
 findEntry(MacroContext mc, const char * name, size_t namelen)
-       /*@*/
 {
     MacroEntry key, *ret;
     struct MacroEntry_s keybuf;
     char *namebuf = NULL;
 
-/*@-globs@*/
     if (mc == NULL) mc = rpmGlobalMacroContext;
-/*@=globs@*/
     if (mc->macroTable == NULL || mc->firstFree == 0)
        return NULL;
 
-/*@-branchstate@*/
     if (namelen > 0) {
        namebuf = alloca(namelen + 1);
        memset(namebuf, 0, (namelen + 1));
@@ -263,19 +234,15 @@ findEntry(MacroContext mc, const char * name, size_t namelen)
        namebuf[namelen] = '\0';
        name = namebuf;
     }
-/*@=branchstate@*/
     
     key = &keybuf;
     memset(key, 0, sizeof(*key));
-    /*@-temptrans -assignexpose@*/
     key->name = (char *)name;
-    /*@=temptrans =assignexpose@*/
     ret = (MacroEntry *) bsearch(&key, mc->macroTable, mc->firstFree,
                        sizeof(*(mc->macroTable)), compareMacroName);
     /* XXX TODO: find 1st empty slot and return that */
     return ret;
 }
-/*@=boundswrite@*/
 
 /* =============================================================== */
 
@@ -286,12 +253,8 @@ findEntry(MacroContext mc, const char * name, size_t namelen)
  * @param fd           file handle
  * @return             buffer, or NULL on end-of-file
  */
-/*@-boundswrite@*/
-/*@null@*/
 static char *
-rdcl(/*@returned@*/ char * buf, size_t size, FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies buf, fileSystem @*/
+rdcl(char * buf, size_t size, FD_t fd)
 {
     char *q = buf - 1;         /* initialize just before buffer. */
     size_t nb = 0;
@@ -313,21 +276,21 @@ rdcl(/*@returned@*/ char * buf, size_t size, FD_t fd)
            switch (*p) {
                case '\\':
                    switch (*(p+1)) {
-                       case '\0': /*@switchbreak@*/ break;
-                       default: p++; /*@switchbreak@*/ break;
+                       case '\0': break;
+                       default: p++; break;
                    }
-                   /*@switchbreak@*/ break;
+                   break;
                case '%':
                    switch (*(p+1)) {
-                       case '{': p++, bc++; /*@switchbreak@*/ break;
-                       case '(': p++, pc++; /*@switchbreak@*/ break;
-                       case '%': p++; /*@switchbreak@*/ break;
+                       case '{': p++, bc++; break;
+                       case '(': p++, pc++; break;
+                       case '%': p++; break;
                    }
-                   /*@switchbreak@*/ break;
-               case '{': if (bc > 0) bc++; /*@switchbreak@*/ break;
-               case '}': if (bc > 0) bc--; /*@switchbreak@*/ break;
-               case '(': if (pc > 0) pc++; /*@switchbreak@*/ break;
-               case ')': if (pc > 0) pc--; /*@switchbreak@*/ break;
+                   break;
+               case '{': if (bc > 0) bc++; break;
+               case '}': if (bc > 0) bc--; break;
+               case '(': if (pc > 0) pc++; break;
+               case ')': if (pc > 0) pc--; break;
            }
        }
        if (nb == 0 || (*q != '\\' && !bc && !pc) || *(q+1) == '\0') {
@@ -341,7 +304,6 @@ rdcl(/*@returned@*/ char * buf, size_t size, FD_t fd)
     } while (size > 0);
     return (nread > 0 ? buf : NULL);
 }
-/*@=boundswrite@*/
 
 /**
  * Return text between pl and matching pr characters.
@@ -350,10 +312,8 @@ rdcl(/*@returned@*/ char * buf, size_t size, FD_t fd)
  * @param pr           right char, i.e. ']', ')', '}', etc.
  * @return             address of last char before pr (or NULL)
  */
-/*@null@*/
 static const char *
 matchchar(const char * p, char pl, char pr)
-       /*@*/
 {
     int lvl = 0;
     char c;
@@ -379,8 +339,6 @@ matchchar(const char * p, char pl, char pr)
  */
 static void
 printMacro(MacroBuf mb, const char * s, const char * se)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     const char *senl;
     const char *ellipsis;
@@ -423,8 +381,6 @@ printMacro(MacroBuf mb, const char * s, const char * se)
  */
 static void
 printExpansion(MacroBuf mb, const char * t, const char * te)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     const char *ellipsis;
     int choplen;
@@ -463,13 +419,11 @@ printExpansion(MacroBuf mb, const char * t, const char * te)
        /*@-globs@*/    /* FIX: __ctype_b */ \
        while (((_c) = *(_s)) && isblank(_c)) \
                (_s)++;         \
-       /*@=globs@*/
 
 #define        SKIPNONBLANK(_s, _c)    \
        /*@-globs@*/    /* FIX: __ctype_b */ \
        while (((_c) = *(_s)) && !(isblank(_c) || iseol(_c))) \
                (_s)++;         \
-       /*@=globs@*/
 
 #define        COPYNAME(_ne, _s, _c)   \
     {  SKIPBLANK(_s,_c);       \
@@ -497,8 +451,6 @@ printExpansion(MacroBuf mb, const char * t, const char * te)
  */
 static int
 expandT(MacroBuf mb, const char * f, size_t flen)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem@*/
-       /*@modifies mb, rpmGlobalMacroContext, fileSystem @*/
 {
     char *sbuf;
     const char *s = mb->s;
@@ -525,8 +477,6 @@ expandT(MacroBuf mb, const char * f, size_t flen)
  */
 static int
 expandS(MacroBuf mb, char * tbuf, size_t tbuflen)
-       /*@globals rpmGlobalMacroContext, fileSystem@*/
-       /*@modifies mb, *tbuf, rpmGlobalMacroContext, fileSystem @*/
 {
     const char *t = mb->t;
     size_t nb = mb->nb;
@@ -548,11 +498,8 @@ expandS(MacroBuf mb, char * tbuf, size_t tbuflen)
  * @param ulen         no. bytes in u buffer
  * @return             result of expansion
  */
-/*@-boundswrite@*/
 static int
 expandU(MacroBuf mb, char * u, size_t ulen)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem@*/
-       /*@modifies mb, *u, rpmGlobalMacroContext, fileSystem @*/
 {
     const char *s = mb->s;
     char *t = mb->t;
@@ -578,7 +525,6 @@ expandU(MacroBuf mb, char * u, size_t ulen)
 
     return rc;
 }
-/*@=boundswrite@*/
 
 /**
  * Expand output of shell command into target buffer.
@@ -587,11 +533,8 @@ expandU(MacroBuf mb, char * u, size_t ulen)
  * @param clen         no. bytes in shell command
  * @return             result of expansion
  */
-/*@-boundswrite@*/
 static int
 doShellEscape(MacroBuf mb, const char * cmd, size_t clen)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem @*/
-       /*@modifies mb, rpmGlobalMacroContext, fileSystem @*/
 {
     char pcmd[BUFSIZ];
     FILE *shf;
@@ -622,7 +565,6 @@ doShellEscape(MacroBuf mb, const char * cmd, size_t clen)
     }
     return 0;
 }
-/*@=boundswrite@*/
 
 /**
  * Parse (and execute) new macro definition.
@@ -632,10 +574,8 @@ doShellEscape(MacroBuf mb, const char * cmd, size_t clen)
  * @param expandbody   should body be expanded?
  * @return             address to continue parsing
  */
-/*@dependent@*/ static const char *
-doDefine(MacroBuf mb, /*@returned@*/ const char * se, int level, int expandbody)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies mb, rpmGlobalMacroContext @*/
+static const char *
+doDefine(MacroBuf mb, const char * se, int level, int expandbody)
 {
     const char *s = se;
     char buf[BUFSIZ], *n = buf, *ne = n;
@@ -667,35 +607,32 @@ doDefine(MacroBuf mb, /*@returned@*/ const char * se, int level, int expandbody)
            return se;
        }
        s++;    /* XXX skip { */
-/*@-boundswrite@*/
        strncpy(b, s, (se - s));
        b[se - s] = '\0';
-/*@=boundswrite@*/
        be += strlen(b);
        se++;   /* XXX skip } */
        s = se; /* move scan forward */
     } else {   /* otherwise free-field */
-/*@-boundswrite@*/
        int bc = 0, pc = 0;
        while (*s && (bc || pc || !iseol(*s))) {
            switch (*s) {
                case '\\':
                    switch (*(s+1)) {
-                       case '\0': /*@switchbreak@*/ break;
-                       default: s++; /*@switchbreak@*/ break;
+                       case '\0': break;
+                       default: s++; break;
                    }
-                   /*@switchbreak@*/ break;
+                   break;
                case '%':
                    switch (*(s+1)) {
-                       case '{': *be++ = *s++; bc++; /*@switchbreak@*/ break;
-                       case '(': *be++ = *s++; pc++; /*@switchbreak@*/ break;
-                       case '%': *be++ = *s++; /*@switchbreak@*/ break;
+                       case '{': *be++ = *s++; bc++; break;
+                       case '(': *be++ = *s++; pc++; break;
+                       case '%': *be++ = *s++; break;
                    }
-                   /*@switchbreak@*/ break;
-               case '{': if (bc > 0) bc++; /*@switchbreak@*/ break;
-               case '}': if (bc > 0) bc--; /*@switchbreak@*/ break;
-               case '(': if (pc > 0) pc++; /*@switchbreak@*/ break;
-               case ')': if (pc > 0) pc--; /*@switchbreak@*/ break;
+                   break;
+               case '{': if (bc > 0) bc++; break;
+               case '}': if (bc > 0) bc--; break;
+               case '(': if (pc > 0) pc++; break;
+               case ')': if (pc > 0) pc--; break;
            }
            *be++ = *s++;
        }
@@ -709,12 +646,9 @@ doDefine(MacroBuf mb, /*@returned@*/ const char * se, int level, int expandbody)
        }
 
        /* Trim trailing blanks/newlines */
-/*@-globs@*/
        while (--be >= b && (c = *be) && (isblank(c) || iseol(c)))
            {};
-/*@=globs@*/
        *(++be) = '\0'; /* one too far */
-/*@=boundswrite@*/
     }
 
     /* Move scan over body */
@@ -740,12 +674,10 @@ doDefine(MacroBuf mb, /*@returned@*/ const char * se, int level, int expandbody)
        return se;
     }
 
-/*@-modfilesys@*/
     if (expandbody && expandU(mb, b, (&buf[sizeof(buf)] - b))) {
        rpmError(RPMERR_BADSPEC, _("Macro %%%s failed to expand\n"), n);
        return se;
     }
-/*@=modfilesys@*/
 
     addMacro(mb->mc, n, o, b, (level - 1));
 
@@ -758,10 +690,8 @@ doDefine(MacroBuf mb, /*@returned@*/ const char * se, int level, int expandbody)
  * @param se           macro name to undefine
  * @return             address to continue parsing
  */
-/*@dependent@*/ static const char *
-doUndefine(MacroContext mc, /*@returned@*/ const char * se)
-       /*@globals rpmGlobalMacroContext @*/
-       /*@modifies mc, rpmGlobalMacroContext @*/
+static const char *
+doUndefine(MacroContext mc, const char * se)
 {
     const char *s = se;
     char buf[BUFSIZ], *n = buf, *ne = n;
@@ -789,8 +719,6 @@ doUndefine(MacroContext mc, /*@returned@*/ const char * se)
 #ifdef DYING
 static void
 dumpME(const char * msg, MacroEntry me)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     if (msg)
        fprintf(stderr, "%s", msg);
@@ -811,30 +739,23 @@ dumpME(const char * msg, MacroEntry me)
  * @param level                macro recursion level
  */
 static void
-pushMacro(/*@out@*/ MacroEntry * mep,
-               const char * n, /*@null@*/ const char * o,
-               /*@null@*/ const char * b, int level)
-       /*@modifies *mep @*/
+pushMacro(MacroEntry * mep,
+               const char * n, const char * o,
+               const char * b, int level)
 {
     MacroEntry prev = (mep && *mep ? *mep : NULL);
     MacroEntry me = (MacroEntry) xmalloc(sizeof(*me));
 
-    /*@-assignexpose@*/
     me->prev = prev;
-    /*@=assignexpose@*/
     me->name = (prev ? prev->name : xstrdup(n));
     me->opts = (o ? xstrdup(o) : NULL);
     me->body = xstrdup(b ? b : "");
     me->used = 0;
     me->level = level;
-/*@-boundswrite@*/
-/*@-branchstate@*/
     if (mep)
        *mep = me;
     else
        me = _free(me);
-/*@=branchstate@*/
-/*@=boundswrite@*/
 }
 
 /**
@@ -843,24 +764,17 @@ pushMacro(/*@out@*/ MacroEntry * mep,
  */
 static void
 popMacro(MacroEntry * mep)
-       /*@modifies *mep @*/
 {
        MacroEntry me = (*mep ? *mep : NULL);
 
-/*@-branchstate@*/
        if (me) {
                /* XXX cast to workaround const */
-               /*@-onlytrans@*/
-/*@-boundswrite@*/
                if ((*mep = me->prev) == NULL)
                        me->name = _free(me->name);
-/*@=boundswrite@*/
                me->opts = _free(me->opts);
                me->body = _free(me->body);
                me = _free(me);
-               /*@=onlytrans@*/
        }
-/*@=branchstate@*/
 }
 
 /**
@@ -869,7 +783,6 @@ popMacro(MacroEntry * mep)
  */
 static void
 freeArgs(MacroBuf mb)
-       /*@modifies mb @*/
 {
     MacroContext mc = mb->mc;
     int ndeleted = 0;
@@ -918,12 +831,9 @@ freeArgs(MacroBuf mb)
  * @param lastc                stop parsing at lastc
  * @return             address to continue parsing
  */
-/*@-bounds@*/
-/*@dependent@*/ static const char *
-grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
+static const char *
+grabArgs(MacroBuf mb, const MacroEntry me, const char * se,
                const char * lastc)
-       /*@globals rpmGlobalMacroContext @*/
-       /*@modifies mb, rpmGlobalMacroContext @*/
 {
     char buf[BUFSIZ], *b, *be;
     char aname[16];
@@ -943,12 +853,10 @@ grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
     /* Copy args into buf until lastc */
     *be++ = ' ';
     while ((c = *se++) != '\0' && (se-1) != lastc) {
-/*@-globs@*/
        if (!isblank(c)) {
            *be++ = c;
            continue;
        }
-/*@=globs@*/
        /* c is blank */
        if (be[-1] == ' ')
            continue;
@@ -1007,9 +915,7 @@ grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
     /* 1003.2 says this must be 1 before any call.  */
 
 #ifdef __GLIBC__
-    /*@-mods@*/
     optind = 0;                /* XXX but posix != glibc */
-    /*@=mods@*/
 #else
     optind = 1;
 #endif
@@ -1017,9 +923,8 @@ grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
     opts = me->opts;
 
     /* Define option macros. */
-/*@-nullstate@*/ /* FIX: argv[] can be NULL */
+/* FIX: argv[] can be NULL */
     while((c = getopt(argc, (char **)argv, opts)) != -1)
-/*@=nullstate@*/
     {
        if (c == '?' || (o = strchr(opts, c)) == NULL) {
            rpmError(RPMERR_BADSPEC, _("Unknown option %c in %s(%s)\n"),
@@ -1053,9 +958,8 @@ grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
            sprintf(aname, "%d", (c - optind + 1));
            addMacro(mb->mc, aname, NULL, argv[c], mb->depth);
            if (be != b) *be++ = ' '; /* Add space between args */
-/*@-nullpass@*/ /* FIX: argv[] can be NULL */
+/* FIX: argv[] can be NULL */
            be = stpcpy(be, argv[c]);
-/*@=nullpass@*/
        }
     }
 
@@ -1064,7 +968,6 @@ grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
 
     return se;
 }
-/*@=bounds@*/
 
 /**
  * Perform macro message output
@@ -1075,8 +978,6 @@ grabArgs(MacroBuf mb, const MacroEntry me, /*@returned@*/ const char * se,
  */
 static void
 doOutput(MacroBuf mb, int waserror, const char * msg, size_t msglen)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem @*/
-       /*@modifies mb, rpmGlobalMacroContext, fileSystem @*/
 {
     char buf[BUFSIZ];
 
@@ -1104,9 +1005,7 @@ doOutput(MacroBuf mb, int waserror, const char * msg, size_t msglen)
  */
 static void
 doFoo(MacroBuf mb, int negate, const char * f, size_t fn,
-               /*@null@*/ const char * g, size_t gn)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
-       /*@modifies mb, rpmGlobalMacroContext, fileSystem, internalState @*/
+               const char * g, size_t gn)
 {
     char buf[BUFSIZ], *b = NULL, *be;
     int c;
@@ -1145,17 +1044,13 @@ doFoo(MacroBuf mb, int negate, const char * f, size_t fn,
            b = (rpmIsVerbose() ? buf : NULL);
     } else if (STREQ("url2path", f, fn) || STREQ("u2p", f, fn)) {
        (void)urlPath(buf, (const char **)&b);
-/*@-branchstate@*/
        if (*b == '\0') b = "/";
-/*@=branchstate@*/
     } else if (STREQ("uncompress", f, fn)) {
        rpmCompressedMagic compressed = COMPRESSED_OTHER;
-/*@-globs@*/
        for (b = buf; (c = *b) && isblank(c);)
            b++;
        for (be = b; (c = *be) && !isblank(c);)
            be++;
-/*@=globs@*/
        *be++ = '\0';
 #ifndef        DEBUG_MACROS
        (void) isCompressed(b, &compressed);
@@ -1237,7 +1132,6 @@ expandMacro(MacroBuf mb)
        return 1;
     }
 
-/*@-branchstate@*/
     while (rc == 0 && mb->nb > 0 && (c = *s) != '\0') {
        s++;
        /* Copy text until next macro */
@@ -1245,14 +1139,13 @@ expandMacro(MacroBuf mb)
        case '%':
                if (*s) {       /* Ensure not end-of-string. */
                    if (*s != '%')
-                       /*@switchbreak@*/ break;
+                       break;
                    s++;        /* skip first % in %% */
                }
-               /*@fallthrough@*/
        default:
                SAVECHAR(mb, c);
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
        }
 
        /* Expand next macro */
@@ -1269,10 +1162,10 @@ expandMacro(MacroBuf mb)
                        switch(*s++) {
                        case '!':
                                negate = ((negate + 1) % 2);
-                               /*@switchbreak@*/ break;
+                               break;
                        case '?':
                                chkexist++;
-                               /*@switchbreak@*/ break;
+                               break;
                        }
                }
                f = se = s;
@@ -1285,21 +1178,19 @@ expandMacro(MacroBuf mb)
                case '*':
                        se++;
                        if (*se == '*') se++;
-                       /*@innerbreak@*/ break;
+                       break;
                case '#':
                        se++;
-                       /*@innerbreak@*/ break;
+                       break;
                default:
-                       /*@innerbreak@*/ break;
+                       break;
                }
                fe = se;
                /* For "%name " macros ... */
-/*@-globs@*/
                if ((c = *fe) && isblank(c))
                        if ((lastc = strchr(fe,'\n')) == NULL)
                 lastc = strchr(fe, '\0');
-/*@=globs@*/
-               /*@switchbreak@*/ break;
+               break;
        case '(':               /* %(...) shell escape */
                if ((se = matchchar(s, c, ')')) == NULL) {
                        rpmError(RPMERR_BADSPEC,
@@ -1316,7 +1207,7 @@ expandMacro(MacroBuf mb)
 
                s = se;
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
        case '{':               /* %{...}/%{...:...} substitution */
                if ((se = matchchar(s, c, '}')) == NULL) {
                        rpmError(RPMERR_BADSPEC,
@@ -1330,10 +1221,10 @@ expandMacro(MacroBuf mb)
                        switch(*f++) {
                        case '!':
                                negate = ((negate + 1) % 2);
-                               /*@switchbreak@*/ break;
+                               break;
                        case '?':
                                chkexist++;
-                               /*@switchbreak@*/ break;
+                               break;
                        }
                }
                for (fe = f; (c = *fe) && !strchr(" :}", c);)
@@ -1342,14 +1233,14 @@ expandMacro(MacroBuf mb)
                case ':':
                        g = fe + 1;
                        ge = se - 1;
-                       /*@innerbreak@*/ break;
+                       break;
                case ' ':
                        lastc = se-1;
-                       /*@innerbreak@*/ break;
+                       break;
                default:
-                       /*@innerbreak@*/ break;
+                       break;
                }
-               /*@switchbreak@*/ break;
+               break;
        }
 
        /* XXX Everything below expects fe > f */
@@ -1456,9 +1347,8 @@ expandMacro(MacroBuf mb)
            STREQ("S", f, fn) ||
            STREQ("P", f, fn) ||
            STREQ("F", f, fn)) {
-               /*@-internalglobs@*/ /* FIX: verbose may be set */
+               /* FIX: verbose may be set */
                doFoo(mb, negate, f, fn, g, gn);
-               /*@=internalglobs@*/
                s = se;
                continue;
        }
@@ -1550,7 +1440,6 @@ expandMacro(MacroBuf mb)
 
        s = se;
     }
-/*@=branchstate@*/
 
     *mb->t = '\0';
     mb->s = s;
@@ -1569,10 +1458,8 @@ expandMacro(MacroBuf mb)
 
 #define POPT_ARGV_ARRAY_GROW_DELTA 5
 
-/*@-boundswrite@*/
 static int XpoptDupArgv(int argc, const char **argv,
                int * argcPtr, const char *** argvPtr)
-       /*@modifies *argcPtr, *argvPtr @*/
 {
     size_t nb = (argc + 1) * sizeof(*argv);
     const char ** argv2;
@@ -1593,12 +1480,10 @@ static int XpoptDupArgv(int argc, const char **argv,
     argv2 = (void *) dst;
     dst += (argc + 1) * sizeof(*argv);
 
-    /*@-branchstate@*/
     for (i = 0; i < argc; i++) {
        argv2[i] = dst;
        dst += strlen(strcpy(dst, argv[i])) + 1;
     }
-    /*@=branchstate@*/
     argv2[argc] = NULL;
 
     if (argvPtr) {
@@ -1611,11 +1496,8 @@ static int XpoptDupArgv(int argc, const char **argv,
        *argcPtr = argc;
     return 0;
 }
-/*@=boundswrite@*/
 
-/*@-bounds@*/
 static int XpoptParseArgvString(const char * s, int * argcPtr, const char *** argvPtr)
-       /*@modifies *argcPtr, *argvPtr @*/
 {
     const char * src;
     char quote = '\0';
@@ -1656,17 +1538,16 @@ static int XpoptParseArgvString(const char * s, int * argcPtr, const char *** ar
          case '"':
          case '\'':
            quote = *src;
-           /*@switchbreak@*/ break;
+           break;
          case '\\':
            src++;
            if (!*src) {
                rc = POPT_ERROR_BADQUOTE;
                goto exit;
            }
-           /*@fallthrough@*/
          default:
            *buf++ = *src;
-           /*@switchbreak@*/ break;
+           break;
        }
     }
 
@@ -1680,9 +1561,7 @@ exit:
     if (argv) free(argv);
     return rc;
 }
-/*@=bounds@*/
 /* =============================================================== */
-/*@unchecked@*/
 static int _debug = 0;
 
 int rpmGlob(const char * patterns, int * argcPtr, const char *** argvPtr)
@@ -1705,14 +1584,12 @@ int rpmGlob(const char * patterns, int * argcPtr, const char *** argvPtr)
     if (rc)
        return rc;
 #ifdef ENABLE_NLS
-/*@-branchstate@*/
        t = setlocale(LC_COLLATE, NULL);
        if (t)
            old_collate = xstrdup(t);
        t = setlocale(LC_CTYPE, NULL);
        if (t)
            old_ctype = xstrdup(t);
-/*@=branchstate@*/
        (void) setlocale(LC_COLLATE, "C");
        (void) setlocale(LC_CTYPE, "C");
 #endif
@@ -1755,14 +1632,14 @@ fprintf(stderr, "*** rpmGlob argv[%d] \"%s\"\n", argc, argv[argc]);
        case URL_IS_PATH:
        case URL_IS_DASH:
            strncpy(globRoot, av[j], nb);
-           /*@switchbreak@*/ break;
+           break;
        case URL_IS_HTTPS:
        case URL_IS_HTTP:
        case URL_IS_FTP:
        case URL_IS_HKP:
        case URL_IS_UNKNOWN:
        default:
-           /*@switchbreak@*/ break;
+           break;
        }
        globRoot += nb;
        *globRoot = '\0';
@@ -1781,9 +1658,7 @@ if (_debug)
 fprintf(stderr, "*** rpmGlob argv[%d] \"%s\"\n", argc, globURL);
            argv[argc++] = xstrdup(globURL);
        }
-       /*@-immediatetrans@*/
        Globfree(&gl);
-       /*@=immediatetrans@*/
        globURL = _free(globURL);
     }
 
@@ -1800,7 +1675,6 @@ fprintf(stderr, "*** rpmGlob argv[%d] \"%s\"\n", argc, globURL);
 
 exit:
 #ifdef ENABLE_NLS      
-/*@-branchstate@*/
     if (old_collate) {
        (void) setlocale(LC_COLLATE, old_collate);
        old_collate = _free(old_collate);
@@ -1809,19 +1683,14 @@ exit:
        (void) setlocale(LC_CTYPE, old_ctype);
        old_ctype = _free(old_ctype);
     }
-/*@=branchstate@*/
 #endif
     av = _free(av);
-/*@-branchstate@*/
     if (rc || argvPtr == NULL) {
-/*@-dependenttrans -unqualifiedtrans@*/
        if (argv != NULL)
        for (i = 0; i < argc; i++)
            argv[i] = _free(argv[i]);
        argv = _free(argv);
-/*@=dependenttrans =unqualifiedtrans@*/
     }
-/*@=branchstate@*/
     return rc;
 }
 
@@ -1903,7 +1772,7 @@ delMacro(MacroContext mc, const char * n)
     }
 }
 
-/*@-mustmod@*/ /* LCL: mc is modified through mb->mc, mb is abstract */
+/* LCL: mc is modified through mb->mc, mb is abstract */
 int
 rpmDefineMacro(MacroContext mc, const char * macro, int level)
 {
@@ -1915,7 +1784,6 @@ rpmDefineMacro(MacroContext mc, const char * macro, int level)
     (void) doDefine(mb, macro, level, 0);
     return 0;
 }
-/*@=mustmod@*/
 
 void
 rpmLoadMacros(MacroContext mc, int level)
@@ -1951,9 +1819,7 @@ rpmLoadMacroFile(MacroContext mc, const char * fn)
     }
 
     /* XXX Assume new fangled macro expansion */
-    /*@-mods@*/
     max_macro_depth = 16;
-    /*@=mods@*/
 
     buf[0] = '\0';
     while(rdcl(buf, sizeof(buf), fd) != NULL) {
@@ -1991,7 +1857,7 @@ rpmInitMacros(MacroContext mc, const char * macrofiles)
        for (me = m; (me = strchr(me, ':')) != NULL; me++) {
            /* Skip over URI's. */
            if (!(me[1] == '/' && me[2] == '/'))
-               /*@innerbreak@*/ break;
+               break;
        }
 
        if (me && *me == ':')
@@ -2021,12 +1887,9 @@ rpmInitMacros(MacroContext mc, const char * macrofiles)
     mfiles = _free(mfiles);
 
     /* Reload cmdline macros */
-    /*@-mods@*/
     rpmLoadMacros(rpmCLIMacroContext, RMIL_CMDLINE);
-    /*@=mods@*/
 }
 
-/*@-globstate@*/
 void
 rpmFreeMacros(MacroContext mc)
 {
@@ -2039,10 +1902,8 @@ rpmFreeMacros(MacroContext mc)
            MacroEntry me;
            while ((me = mc->macroTable[i]) != NULL) {
                /* XXX cast to workaround const */
-               /*@-onlytrans@*/
                if ((mc->macroTable[i] = me->prev) == NULL)
                    me->name = _free(me->name);
-               /*@=onlytrans@*/
                me->opts = _free(me->opts);
                me->body = _free(me->body);
                me = _free(me);
@@ -2052,7 +1913,6 @@ rpmFreeMacros(MacroContext mc)
     }
     memset(mc, 0, sizeof(*mc));
 }
-/*@=globstate@*/
 
 /* =============================================================== */
 int isCompressed(const char * file, rpmCompressedMagic * compressed)
@@ -2105,7 +1965,6 @@ int isCompressed(const char * file, rpmCompressedMagic * compressed)
 
 /* =============================================================== */
 
-/*@-modfilesys@*/
 char * 
 rpmExpand(const char *arg, ...)
 {
@@ -2127,7 +1986,6 @@ rpmExpand(const char *arg, ...)
     (void) expandMacros(NULL, NULL, buf, sizeof(buf));
     return xstrdup(buf);
 }
-/*@=modfilesys@*/
 
 int
 rpmExpandNumeric(const char *arg)
@@ -2175,10 +2033,10 @@ char *rpmCleanPath(char * path)
            if (s[1] == '/' && s[2] == '/') {
                *t++ = *s++;
                *t++ = *s++;
-               /*@switchbreak@*/ break;
+               break;
            }
            begin=1;
-           /*@switchbreak@*/ break;
+           break;
        case '/':
            /* Move parent dir forward */
            for (se = te + 1; se < t && *se != '/'; se++)
@@ -2191,7 +2049,7 @@ char *rpmCleanPath(char * path)
                s++;
            while (t > path && t[-1] == '/')
                t--;
-           /*@switchbreak@*/ break;
+           break;
        case '.':
            /* Leading .. is special */
            /* Check that it is ../, so that we don't interpret */
@@ -2202,11 +2060,11 @@ char *rpmCleanPath(char * path)
            if (begin && s[1] == '.' && (s[2] == '/' || s[2] == '\0')) {
 /*fprintf(stderr, "    leading \"..\"\n"); */
                *t++ = *s++;
-               /*@switchbreak@*/ break;
+               break;
            }
            /* Single . is special */
            if (begin && s[1] == '\0') {
-               /*@switchbreak@*/ break;
+               break;
            }
            /* Trim embedded ./ , trailing /. */
            if ((t[-1] == '/' && s[1] == '\0') || (t > path && t[-1] == '/' && s[1] == '/')) {
@@ -2225,10 +2083,10 @@ char *rpmCleanPath(char * path)
                s++;
                continue;
            }
-           /*@switchbreak@*/ break;
+           break;
        default:
            begin = 0;
-           /*@switchbreak@*/ break;
+           break;
        }
        *t++ = *s++;
     }
@@ -2266,9 +2124,7 @@ rpmGetPath(const char *path, ...)
        *te = '\0';
     }
     va_end(ap);
-/*@-modfilesys@*/
     (void) expandMacros(NULL, NULL, buf, sizeof(buf));
-/*@=modfilesys@*/
 
     (void) rpmCleanPath(buf);
     return xstrdup(buf);       /* XXX xstrdup has side effects. */
@@ -2279,12 +2135,12 @@ rpmGetPath(const char *path, ...)
 const char * rpmGenPath(const char * urlroot, const char * urlmdir,
                const char *urlfile)
 {
-/*@owned@*/ const char * xroot = rpmGetPath(urlroot, NULL);
-/*@dependent@*/ const char * root = xroot;
-/*@owned@*/ const char * xmdir = rpmGetPath(urlmdir, NULL);
-/*@dependent@*/ const char * mdir = xmdir;
-/*@owned@*/ const char * xfile = rpmGetPath(urlfile, NULL);
-/*@dependent@*/ const char * file = xfile;
+const char * xroot = rpmGetPath(urlroot, NULL);
+const char * root = xroot;
+const char * xmdir = rpmGetPath(urlmdir, NULL);
+const char * mdir = xmdir;
+const char * xfile = rpmGetPath(urlfile, NULL);
+const char * file = xfile;
     const char * result;
     const char * url = NULL;
     int nurl = 0;
@@ -2322,14 +2178,12 @@ if (_debug) fprintf(stderr, "*** RGP ut %d file %s nurl %d\n", ut, file, nurl);
 #endif
     }
 
-/*@-branchstate@*/
     if (url && nurl > 0) {
        char *t = strncpy(alloca(nurl+1), url, nurl);
        t[nurl] = '\0';
        url = t;
     } else
        url = "";
-/*@=branchstate@*/
 
     result = rpmGetPath(url, root, "/", mdir, "/", file, NULL);
 
@@ -2423,4 +2277,3 @@ main(int argc, char *argv[])
 }
 #endif /* EVAL_MACROS */
 #endif /* DEBUG_MACROS */
-/*@=boundsread@*/
index 4c24f9c..ab63137 100644 (file)
@@ -1,4 +1,3 @@
-/*@-modfilesys@*/
 /** \ingroup rpmio
  * \file rpmio/rpmdav.c
  */
@@ -37,9 +36,6 @@
 #include "ugid.h"
 #include "debug.h"
 
-/*@access DIR @*/
-/*@access FD_t @*/
-/*@access urlinfo @*/
 
 #if 0  /* HACK: reasonable value needed. */
 #define TIMEOUT_SECS 60
@@ -48,7 +44,6 @@
 #endif
 
 #ifdef WITH_NEON
-/*@unchecked@*/
 static int httpTimeoutSecs = TIMEOUT_SECS;
 #endif
 
@@ -57,9 +52,8 @@ static int httpTimeoutSecs = TIMEOUT_SECS;
  * @param p            memory to free
  * @retval             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
-       /*@modifies p@*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
@@ -69,8 +63,6 @@ _free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
 
 /* =============================================================== */
 static int davFree(urlinfo u)
-       /*@globals internalState @*/
-       /*@modifies u, internalState @*/
 {
     if (u != NULL && u->sess != NULL) {
        u->capabilities = _free(u->capabilities);
@@ -84,7 +76,6 @@ static int davFree(urlinfo u)
 }
 
 static void davProgress(void * userdata, off_t current, off_t total)
-       /*@*/
 {
     urlinfo u = userdata;
     ne_session * sess;
@@ -103,11 +94,9 @@ fprintf(stderr, "*** davProgress(%p,0x%x:0x%x) sess %p u %p\n", userdata, (unsig
 
 static void davNotify(void * userdata,
                ne_conn_status connstatus, const char * info)
-       /*@*/
 {
     urlinfo u = userdata;
     ne_session * sess;
-    /*@observer@*/
     static const char * connstates[] = {
        "namelookup",
        "connecting",
@@ -132,16 +121,13 @@ typedef enum {
 
     u->connstatus = connstatus;
 
-/*@-boundsread@*/
 if (_dav_debug < 0)
 fprintf(stderr, "*** davNotify(%p,%d,%p) sess %p u %p %s\n", userdata, connstatus, info, sess, u, connstates[ (connstatus < 4 ? connstatus : 4)]);
-/*@=boundsread@*/
 
 }
 
 static void davCreateRequest(ne_request * req, void * userdata,
                const char * method, const char * uri)
-       /*@*/
 {
     urlinfo u = userdata;
     ne_session * sess;
@@ -187,7 +173,6 @@ fprintf(stderr, "-> %s\n", buf->data);
 }
 
 static int davPostSend(ne_request * req, void * userdata, const ne_status * status)
-       /*@*/
 {
     urlinfo u = userdata;
     ne_session * sess;
@@ -203,15 +188,12 @@ assert(u == ne_get_session_private(sess, "urlinfo"));
 
     fd = ne_get_request_private(req, id);
 
-/*@-evalorder@*/
 if (_dav_debug < 0)
 fprintf(stderr, "*** davPostSend(%p,%p,%p) sess %p %s %p %s\n", req, userdata, status, sess, id, fd, ne_get_error(sess));
-/*@=evalorder@*/
     return NE_OK;
 }
 
 static void davDestroyRequest(ne_request * req, void * userdata)
-       /*@*/
 {
     urlinfo u = userdata;
     ne_session * sess;
@@ -232,7 +214,6 @@ fprintf(stderr, "*** davDestroyRequest(%p,%p) sess %p %s %p\n", req, userdata, s
 }
 
 static void davDestroySession(void * userdata)
-       /*@*/
 {
     urlinfo u = userdata;
     ne_session * sess;
@@ -254,7 +235,6 @@ fprintf(stderr, "*** davDestroySession(%p) sess %p %s %p\n", userdata, sess, id,
 
 static int
 davVerifyCert(void *userdata, int failures, const ne_ssl_certificate *cert)
-       /*@*/
 {
     const char *hostname = userdata;
 
@@ -265,8 +245,6 @@ fprintf(stderr, "*** davVerifyCert(%p,%d,%p) %s\n", userdata, failures, cert, ho
 }
 
 static int davConnect(urlinfo u)
-       /*@globals internalState @*/
-       /*@modifies u, internalState @*/
 {
     const char * path = NULL;
     int rc;
@@ -286,7 +264,6 @@ static int davConnect(urlinfo u)
        /* HACK: "301 Moved Permanently" on empty subdir. */
        if (!strncmp("301 ", ne_get_error(u->sess), sizeof("301 ")-1))
            break;
-       /*@fallthrough@*/
     case NE_CONNECT:
     case NE_LOOKUP:
     default:
@@ -304,8 +281,6 @@ fprintf(stderr, "*** Connect to %s:%d failed(%d):\n\t%s\n",
 }
 
 static int davInit(const char * url, urlinfo * uret)
-       /*@globals internalState @*/
-       /*@modifies *uret, internalState @*/
 {
     urlinfo u = NULL;
     int rc = 0;
@@ -313,23 +288,20 @@ static int davInit(const char * url, urlinfo * uret)
 /*@-globs@*/   /* FIX: h_errno annoyance. */
     if (urlSplit(url, &u))
        return -1;      /* XXX error returns needed. */
-/*@=globs@*/
 
     if (u->url != NULL && u->sess == NULL)
     switch (u->urltype) {
     default:
        assert(u->urltype != u->urltype);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
     case URL_IS_HKP:
       {        ne_server_capabilities * capabilities;
 
        /* HACK: oneshots should be done Somewhere Else Instead. */
-/*@-noeffect@*/
        rc = ((_dav_debug < 0) ? NE_DBG_HTTP : 0);
        ne_debug_init(stderr, rc);              /* XXX oneshot? */
-/*@=noeffect@*/
        rc = ne_sock_init();                    /* XXX oneshot? */
 
        u->lockstore = ne_lockstore_create();   /* XXX oneshot? */
@@ -377,10 +349,8 @@ static int davInit(const char * url, urlinfo * uret)
     }
 
 exit:
-/*@-boundswrite@*/
     if (rc == 0 && uret != NULL)
        *uret = urlLink(u, __FUNCTION__);
-/*@=boundswrite@*/
     u = urlFree(u, "urlSplit (davInit)");
 
     return rc;
@@ -397,7 +367,6 @@ enum fetch_rtype_e {
 struct fetch_resource_s {
     struct fetch_resource_s *next;
     char *uri;
-/*@unused@*/
     char *displayname;
     enum fetch_rtype_e type;
     size_t size;
@@ -408,9 +377,7 @@ struct fetch_resource_s {
     int error_status; /* error status returned for this resource */
 };
 
-/*@null@*/
-static void *fetch_destroy_item(/*@only@*/ struct fetch_resource_s *res)
-       /*@modifies res @*/
+static void *fetch_destroy_item(struct fetch_resource_s *res)
 {
     NE_FREE(res->uri);
     NE_FREE(res->error_reason);
@@ -419,23 +386,18 @@ static void *fetch_destroy_item(/*@only@*/ struct fetch_resource_s *res)
 }
 
 #ifdef UNUSED
-/*@null@*/
-static void *fetch_destroy_list(/*@only@*/ struct fetch_resource_s *res)
-       /*@modifies res @*/
+static void *fetch_destroy_list(struct fetch_resource_s *res)
 {
     struct fetch_resource_s *next;
-/*@-branchstate@*/
     for (; res != NULL; res = next) {
        next = res->next;
        res = fetch_destroy_item(res);
     }
-/*@=branchstate@*/
     return NULL;
 }
 #endif
 
-static void *fetch_create_item(/*@unused@*/ void *userdata, /*@unused@*/ const char *uri)
-        /*@*/
+static void *fetch_create_item(void *userdata, const char *uri)
 {
     struct fetch_resource_s * res = ne_calloc(sizeof(*res));
     return res;
@@ -443,11 +405,9 @@ static void *fetch_create_item(/*@unused@*/ void *userdata, /*@unused@*/ const c
 
 /* =============================================================== */
 struct fetch_context_s {
-/*@relnull@*/
     struct fetch_resource_s **resrock;
     const char *uri;
     unsigned int include_target; /* Include resource at href */
-/*@refcounted@*/
     urlinfo u;
     int ac;
     int nalloced;
@@ -457,10 +417,7 @@ struct fetch_context_s {
     time_t * mtimes;
 };
 
-/*@null@*/
-static void *fetch_destroy_context(/*@only@*/ /*@null@*/ struct fetch_context_s *ctx)
-       /*@globals internalState @*/
-       /*@modifies ctx, internalState @*/
+static void *fetch_destroy_context(struct fetch_context_s *ctx)
 {
     if (ctx == NULL)
        return NULL;
@@ -471,17 +428,12 @@ static void *fetch_destroy_context(/*@only@*/ /*@null@*/ struct fetch_context_s
     ctx->mtimes = _free(ctx->mtimes);
     ctx->u = urlFree(ctx->u, __FUNCTION__);
     ctx->uri = _free(ctx->uri);
-/*@-boundswrite@*/
     memset(ctx, 0, sizeof(*ctx));
-/*@=boundswrite@*/
     ctx = _free(ctx);
     return NULL;
 }
 
-/*@null@*/
 static void *fetch_create_context(const char *uri)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/
 {
     struct fetch_context_s * ctx;
     urlinfo u;
@@ -489,7 +441,6 @@ static void *fetch_create_context(const char *uri)
 /*@-globs@*/   /* FIX: h_errno annoyance. */
     if (urlSplit(uri, &u))
        return NULL;
-/*@=globs@*/
 
     ctx = ne_calloc(sizeof(*ctx));
     ctx->uri = xstrdup(uri);
@@ -497,7 +448,6 @@ static void *fetch_create_context(const char *uri)
     return ctx;
 }
 
-/*@unchecked@*/ /*@observer@*/
 static const ne_propname fetch_props[] = {
     { "DAV:", "getcontentlength" },
     { "DAV:", "getlastmodified" },
@@ -511,7 +461,6 @@ static const ne_propname fetch_props[] = {
 #define ELM_resourcetype (NE_PROPS_STATE_TOP + 1)
 #define ELM_collection (NE_PROPS_STATE_TOP + 2)
 
-/*@unchecked@*/ /*@observer@*/
 static const struct ne_xml_idmap fetch_idmap[] = {
     { "DAV:", "resourcetype", ELM_resourcetype },
     { "DAV:", "collection", ELM_collection }
@@ -519,8 +468,7 @@ static const struct ne_xml_idmap fetch_idmap[] = {
 
 static int fetch_startelm(void *userdata, int parent, 
                const char *nspace, const char *name,
-               /*@unused@*/ const char **atts)
-       /*@*/
+               const char **atts)
 {
     ne_propfind_handler *pfh = userdata;
     struct fetch_resource_s *r = ne_propfind_current_private(pfh);
@@ -541,7 +489,6 @@ static int fetch_startelm(void *userdata, int parent,
 
 static int fetch_compare(const struct fetch_resource_s *r1, 
                            const struct fetch_resource_s *r2)
-       /*@*/
 {
     /* Sort errors first, then collections, then alphabetically */
     if (r1->type == resr_error) {
@@ -565,7 +512,6 @@ static int fetch_compare(const struct fetch_resource_s *r1,
 
 static void fetch_results(void *userdata, const char *uri,
                    const ne_prop_result_set *set)
-       /*@*/
 {
     struct fetch_context_s *ctx = userdata;
     struct fetch_resource_s *current, *previous, *newres;
@@ -594,20 +540,16 @@ fprintf(stderr, "==> %s skipping target resource.\n", path);
 
     newres->uri = ne_strdup(path);
 
-/*@-boundsread@*/
     clength = ne_propset_value(set, &fetch_props[0]);    
     modtime = ne_propset_value(set, &fetch_props[1]);
     isexec = ne_propset_value(set, &fetch_props[2]);
     checkin = ne_propset_value(set, &fetch_props[4]);
     checkout = ne_propset_value(set, &fetch_props[5]);
-/*@=boundsread@*/
     
-/*@-branchstate@*/
     if (clength == NULL)
        status = ne_propset_status(set, &fetch_props[0]);
     if (modtime == NULL)
        status = ne_propset_status(set, &fetch_props[1]);
-/*@=branchstate@*/
 
     if (newres->type == resr_normal && status != NULL) {
        /* It's an error! */
@@ -663,16 +605,12 @@ fprintf(stderr, "==> %s skipping target resource.\n", path);
     if (previous) {
        previous->next = newres;
     } else {
-/*@-boundswrite@*/
        *ctx->resrock = newres;
-/*@=boundswrite@*/
     }
     newres->next = current;
 }
 
 static int davFetch(const urlinfo u, struct fetch_context_s * ctx)
-       /*@globals internalState @*/
-       /*@modifies ctx, internalState @*/
 {
     const char * path = NULL;
     int depth = 1;                                     /* XXX passed arg? */
@@ -724,9 +662,7 @@ static int davFetch(const urlinfo u, struct fetch_context_s * ctx)
 
        val = ne_strndup(s, (se - s));
 
-/*@-nullpass@*/
        val = ne_path_unescape(val);
-/*@=nullpass@*/
 
        xx = argvAdd(&ctx->av, val);
 if (_dav_debug < 0)
@@ -748,21 +684,19 @@ fprintf(stderr, "*** argvAdd(%p,\"%s\")\n", &ctx->av, val);
        switch (current->type) {
        case resr_normal:
            st_mode = S_IFREG;
-           /*@switchbreak@*/ break;
+           break;
        case resr_collection:
            st_mode = S_IFDIR;
-           /*@switchbreak@*/ break;
+           break;
        case resr_reference:
        case resr_error:
        default:
            st_mode = 0;
-           /*@switchbreak@*/ break;
+           break;
        }
-/*@-boundswrite@*/
        ctx->modes[ctx->ac] = st_mode;
        ctx->sizes[ctx->ac] = current->size;
        ctx->mtimes[ctx->ac] = current->modtime;
-/*@=boundswrite@*/
        ctx->ac++;
 
        current = fetch_destroy_item(current);
@@ -773,8 +707,6 @@ fprintf(stderr, "*** argvAdd(%p,\"%s\")\n", &ctx->av, val);
 }
 
 static int davNLST(struct fetch_context_s * ctx)
-       /*@globals internalState @*/
-       /*@modifies ctx, internalState @*/
 {
     urlinfo u = NULL;
     int rc;
@@ -792,7 +724,6 @@ static int davNLST(struct fetch_context_s * ctx)
        /* HACK: "301 Moved Permanently" on empty subdir. */
        if (!strncmp("301 ", ne_get_error(u->sess), sizeof("301 ")-1))
            break;
-       /*@fallthrough@*/
     default:
 if (_dav_debug)
 fprintf(stderr, "*** Fetch from %s:%d failed:\n\t%s\n",
@@ -807,8 +738,7 @@ exit:
 }
 
 /* =============================================================== */
-static int my_result(const char * msg, int ret, /*@null@*/ FILE * fp)
-       /*@modifies *fp @*/
+static int my_result(const char * msg, int ret, FILE * fp)
 {
     /* HACK: don't print unless debugging. */
     if (_dav_debug >= 0)
@@ -829,7 +759,6 @@ static int my_result(const char * msg, int ret, /*@null@*/ FILE * fp)
 
 #ifdef DYING
 static void hexdump(const unsigned char * buf, ssize_t len)
-       /*@*/
 {
     int i;
     if (len <= 0)
@@ -843,8 +772,7 @@ static void hexdump(const unsigned char * buf, ssize_t len)
 }
 #endif
 
-static void davAcceptRanges(void * userdata, /*@null@*/ const char * value)
-       /*@modifies userdata @*/
+static void davAcceptRanges(void * userdata, const char * value)
 {
     urlinfo u = userdata;
 
@@ -868,21 +796,17 @@ fprintf(stderr, "<- %s\n", value);
 }
 #endif
 
-static void davContentLength(void * userdata, /*@null@*/ const char * value)
-       /*@modifies userdata @*/
+static void davContentLength(void * userdata, const char * value)
 {
     FD_t ctrl = userdata;
 
     if (!(ctrl && value)) return;
 if (_dav_debug < 0)
 fprintf(stderr, "*** fd %p Content-Length: %s\n", ctrl, value);
-/*@-unrecog@*/
    ctrl->contentLength = strtoll(value, NULL, 10);
-/*@=unrecog@*/
 }
 
-static void davConnection(void * userdata, /*@null@*/ const char * value)
-       /*@modifies userdata @*/
+static void davConnection(void * userdata, const char * value)
 {
     FD_t ctrl = userdata;
 
@@ -895,8 +819,8 @@ fprintf(stderr, "*** fd %p Connection: %s\n", ctrl, value);
        ctrl->persist = 1;
 }
 
-/*@-mustmod@*/ /* HACK: stash error in *str. */
-int davResp(urlinfo u, FD_t ctrl, /*@unused@*/ char *const * str)
+/* HACK: stash error in *str. */
+int davResp(urlinfo u, FD_t ctrl, char *const * str)
 {
     int rc = 0;
 
@@ -907,14 +831,11 @@ if (_dav_debug < 0)
 fprintf(stderr, "*** davResp(%p,%p,%p) sess %p req %p rc %d\n", u, ctrl, str, u->sess, ctrl->req, rc);
 
     /* HACK FTPERR_NE_FOO == -NE_FOO error impedance match */
-/*@-observertrans@*/
     if (rc)
        fdSetSyserrno(ctrl, errno, ftpStrerror(-rc));
-/*@=observertrans@*/
 
     return rc;
 }
-/*@=mustmod@*/
 
 int davReq(FD_t ctrl, const char * httpCmd, const char * httpArg)
 {
@@ -933,9 +854,7 @@ fprintf(stderr, "*** davReq(%p,%s,\"%s\") entry sess %p req %p\n", ctrl, httpCmd
 
 assert(u->sess != NULL);
 assert(ctrl->req == NULL);
-/*@-nullpass@*/
     ctrl->req = ne_request_create(u->sess, httpCmd, httpArg);
-/*@=nullpass@*/
 assert(ctrl->req != NULL);
 
     ne_set_request_private(ctrl->req, "fd", ctrl);
@@ -995,9 +914,7 @@ fprintf(stderr, "*** davReq(%p,%s,\"%s\") exit sess %p req %p rc %d\n", ctrl, ht
     return 0;
 
 errxit:
-/*@-observertrans@*/
     fdSetSyserrno(ctrl, errno, ftpStrerror(rc));
-/*@=observertrans@*/
 
     /* HACK balance fd refs. ne_session_destroy to tear down non-keepalive? */
     ctrl = fdLink(ctrl, "error data (davReq)");
@@ -1005,8 +922,8 @@ errxit:
     return rc;
 }
 
-FD_t davOpen(const char * url, /*@unused@*/ int flags,
-               /*@unused@*/ mode_t mode, /*@out@*/ urlinfo * uret)
+FD_t davOpen(const char * url, int flags,
+               mode_t mode, urlinfo * uret)
 {
     const char * path = NULL;
     urltype urlType = urlPath(url, &path);
@@ -1048,16 +965,12 @@ assert(urlType == URL_IS_HTTPS || urlType == URL_IS_HTTP || urlType == URL_IS_HK
     }
 
 exit:
-/*@-boundswrite@*/
     if (uret)
        *uret = u;
-/*@=boundswrite@*/
-    /*@-refcounttrans@*/
     return fd;
-    /*@=refcounttrans@*/
 }
 
-ssize_t davRead(void * cookie, /*@out@*/ char * buf, size_t count)
+ssize_t davRead(void * cookie, char * buf, size_t count)
 {
     FD_t fd = cookie;
     ssize_t rc;
@@ -1114,7 +1027,7 @@ hexdump(buf, count);
     return rc;
 }
 
-int davSeek(void * cookie, /*@unused@*/ _libio_pos_t pos, int whence)
+int davSeek(void * cookie, _libio_pos_t pos, int whence)
 {
 if (_dav_debug < 0)
 fprintf(stderr, "*** davSeek(%p,pos,%d)\n", cookie, whence);
@@ -1124,9 +1037,7 @@ fprintf(stderr, "*** davSeek(%p,pos,%d)\n", cookie, whence);
 /*@-mustmod@*/ /* HACK: fd->req is modified. */
 int davClose(void * cookie)
 {
-/*@-onlytrans@*/
     FD_t fd = cookie;
-/*@=onlytrans@*/
     int rc;
 
 assert(fd->req != NULL);
@@ -1140,7 +1051,6 @@ if (_dav_debug < 0)
 fprintf(stderr, "*** davClose(%p) rc %d\n", fd, rc);
     return rc;
 }
-/*@=mustmod@*/
 
 /* =============================================================== */
 int davMkdir(const char * path, mode_t mode)
@@ -1244,8 +1154,6 @@ fprintf(stderr, "*** davUnlink(%s) rc %d\n", path, rc);
 
 #ifdef NOTYET
 static int davChdir(const char * path)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     return davCommand("CWD", path, NULL);
 }
@@ -1254,8 +1162,7 @@ static int davChdir(const char * path)
 /* =============================================================== */
 
 static const char * statstr(const struct stat * st,
-               /*@returned@*/ /*@out@*/ char * buf)
-       /*@modifies *buf @*/
+               char * buf)
 {
     sprintf(buf,
        "*** dev %x ino %x mode %0o nlink %d uid %d gid %d rdev %x size %x\n",
@@ -1270,13 +1177,9 @@ static const char * statstr(const struct stat * st,
     return buf;
 }
 
-/*@unchecked@*/
 static int dav_st_ino = 0xdead0000;
 
-/*@-boundswrite@*/
-int davStat(const char * path, /*@out@*/ struct stat *st)
-       /*@globals dav_st_ino, fileSystem, internalState @*/
-       /*@modifies *st, dav_st_ino, fileSystem, internalState @*/
+int davStat(const char * path, struct stat *st)
 {
     struct fetch_context_s * ctx = NULL;
     char buf[1024];
@@ -1316,12 +1219,8 @@ exit:
     ctx = fetch_destroy_context(ctx);
     return rc;
 }
-/*@=boundswrite@*/
 
-/*@-boundswrite@*/
-int davLstat(const char * path, /*@out@*/ struct stat *st)
-       /*@globals dav_st_ino, fileSystem, internalState @*/
-       /*@modifies *st, dav_st_ino, fileSystem, internalState @*/
+int davLstat(const char * path, struct stat *st)
 {
     struct fetch_context_s * ctx = NULL;
     char buf[1024];
@@ -1361,12 +1260,9 @@ exit:
     ctx = fetch_destroy_context(ctx);
     return rc;
 }
-/*@=boundswrite@*/
 
 #ifdef NOTYET
-static int davReadlink(const char * path, /*@out@*/ char * buf, size_t bufsiz)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies *buf, fileSystem, internalState @*/
+static int davReadlink(const char * path, char * buf, size_t bufsiz)
 {
     int rc;
     rc = davNLST(path, DO_FTP_READLINK, NULL, buf, bufsiz);
@@ -1379,10 +1275,9 @@ fprintf(stderr, "*** davReadlink(%s) rc %d\n", path, rc);
 #endif /* WITH_NEON */
 
 /* =============================================================== */
-/*@unchecked@*/
 int avmagicdir = 0x3607113;
 
-int avClosedir(/*@only@*/ DIR * dir)
+int avClosedir(DIR * dir)
 {
     AVDIR avdir = (AVDIR)dir;
 
@@ -1390,9 +1285,7 @@ if (_av_debug)
 fprintf(stderr, "*** avClosedir(%p)\n", avdir);
 
 #if defined(HAVE_PTHREAD_H)
-/*@-moduncon -noeffectuncon @*/
     (void) pthread_mutex_destroy(&avdir->lock);
-/*@=moduncon =noeffectuncon @*/
 #endif
 
     avdir = _free(avdir);
@@ -1419,15 +1312,12 @@ struct dirent * avReaddir(DIR * dir)
     dt = (unsigned char *) (av + (ac + 1));
     i = avdir->offset + 1;
 
-/*@-boundsread@*/
     if (i < 0 || i >= ac || av[i] == NULL)
        return NULL;
-/*@=boundsread@*/
 
     avdir->offset = i;
 
     /* XXX glob(3) uses REAL_DIR_ENTRY(dp) test on d_ino */
-/*@-type@*/
     dp->d_ino = i + 1;         /* W2DO? */
     dp->d_reclen = 0;          /* W2DO? */
 
@@ -1435,11 +1325,8 @@ struct dirent * avReaddir(DIR * dir)
 #if !defined(__APPLE__)
     dp->d_off = 0;             /* W2DO? */
 #endif
-/*@-boundsread@*/
     dp->d_type = dt[i];
-/*@=boundsread@*/
 #endif
-/*@=type@*/
 
     strncpy(dp->d_name, av[i], sizeof(dp->d_name));
 if (_av_debug)
@@ -1448,7 +1335,6 @@ fprintf(stderr, "*** avReaddir(%p) %p \"%s\"\n", (void *)avdir, dp, dp->d_name);
     return dp;
 }
 
-/*@-boundswrite@*/
 DIR * avOpendir(const char * path)
 {
     AVDIR avdir;
@@ -1466,49 +1352,37 @@ fprintf(stderr, "*** avOpendir(%s)\n", path);
 
     nb += sizeof(*avdir) + sizeof(*dp) + ((ac + 1) * sizeof(*av)) + (ac + 1);
     avdir = xcalloc(1, nb);
-/*@-abstract@*/
     dp = (struct dirent *) (avdir + 1);
     av = (const char **) (dp + 1);
     dt = (unsigned char *) (av + (ac + 1));
     t = (char *) (dt + ac + 1);
-/*@=abstract@*/
 
     avdir->fd = avmagicdir;
-/*@-usereleased@*/
     avdir->data = (char *) dp;
-/*@=usereleased@*/
     avdir->allocation = nb;
     avdir->size = ac;
     avdir->offset = -1;
     avdir->filepos = 0;
 
 #if defined(HAVE_PTHREAD_H)
-/*@-moduncon -noeffectuncon -nullpass @*/
     (void) pthread_mutex_init(&avdir->lock, NULL);
-/*@=moduncon =noeffectuncon =nullpass @*/
 #endif
 
     ac = 0;
-    /*@-dependenttrans -unrecog@*/
     dt[ac] = DT_DIR;   av[ac++] = t;   t = stpcpy(t, ".");     t++;
     dt[ac] = DT_DIR;   av[ac++] = t;   t = stpcpy(t, "..");    t++;
-    /*@=dependenttrans =unrecog@*/
 
     av[ac] = NULL;
 
-/*@-kepttrans@*/
     return (DIR *) avdir;
-/*@=kepttrans@*/
 }
-/*@=boundswrite@*/
 
 #ifdef WITH_NEON
 
 /* =============================================================== */
-/*@unchecked@*/
 int davmagicdir = 0x8440291;
 
-int davClosedir(/*@only@*/ DIR * dir)
+int davClosedir(DIR * dir)
 {
     DAVDIR avdir = (DAVDIR)dir;
 
@@ -1516,9 +1390,7 @@ if (_dav_debug < 0)
 fprintf(stderr, "*** davClosedir(%p)\n", avdir);
 
 #if defined(HAVE_PTHREAD_H)
-/*@-moduncon -noeffectuncon @*/
     (void) pthread_mutex_destroy(&avdir->lock);
-/*@=moduncon =noeffectuncon @*/
 #endif
 
     avdir = _free(avdir);
@@ -1545,15 +1417,12 @@ struct dirent * davReaddir(DIR * dir)
     dt = (unsigned char *) (av + (ac + 1));
     i = avdir->offset + 1;
 
-/*@-boundsread@*/
     if (i < 0 || i >= ac || av[i] == NULL)
        return NULL;
-/*@=boundsread@*/
 
     avdir->offset = i;
 
     /* XXX glob(3) uses REAL_DIR_ENTRY(dp) test on d_ino */
-/*@-type@*/
     dp->d_ino = i + 1;         /* W2DO? */
     dp->d_reclen = 0;          /* W2DO? */
 
@@ -1561,11 +1430,8 @@ struct dirent * davReaddir(DIR * dir)
 #if !defined(__APPLE__)
     dp->d_off = 0;             /* W2DO? */
 #endif
-/*@-boundsread@*/
     dp->d_type = dt[i];
-/*@=boundsread@*/
 #endif
-/*@=type@*/
 
     strncpy(dp->d_name, av[i], sizeof(dp->d_name));
 if (_dav_debug < 0)
@@ -1574,7 +1440,6 @@ fprintf(stderr, "*** davReaddir(%p) %p \"%s\"\n", (void *)avdir, dp, dp->d_name)
     return dp;
 }
 
-/*@-boundswrite@*/
 DIR * davOpendir(const char * path)
 {
     struct fetch_context_s * ctx;
@@ -1589,14 +1454,12 @@ DIR * davOpendir(const char * path)
 
     /* HACK: glob does not pass dirs with trailing '/' */
     nb = strlen(path)+1;
-/*@-branchstate@*/
     if (path[nb-1] != '/') {
        char * npath = alloca(nb+1);
        *npath = '\0';
        (void) stpcpy( stpcpy(npath, path), "/");
        path = npath;
     }
-/*@=branchstate@*/
 
 if (_dav_debug < 0)
 fprintf(stderr, "*** davOpendir(%s)\n", path);
@@ -1624,33 +1487,25 @@ fprintf(stderr, "*** davOpendir(%s)\n", path);
 
     nb += sizeof(*avdir) + sizeof(*dp) + ((ac + 1) * sizeof(*av)) + (ac + 1);
     avdir = xcalloc(1, nb);
-    /*@-abstract@*/
     dp = (struct dirent *) (avdir + 1);
     nav = (const char **) (dp + 1);
     dt = (unsigned char *) (nav + (ac + 1));
     t = (char *) (dt + ac + 1);
-    /*@=abstract@*/
 
     avdir->fd = davmagicdir;
-/*@-usereleased@*/
     avdir->data = (char *) dp;
-/*@=usereleased@*/
     avdir->allocation = nb;
     avdir->size = ac;
     avdir->offset = -1;
     avdir->filepos = 0;
 
 #if defined(HAVE_PTHREAD_H)
-/*@-moduncon -noeffectuncon -nullpass @*/
     (void) pthread_mutex_init(&avdir->lock, NULL);
-/*@=moduncon =noeffectuncon =nullpass @*/
 #endif
 
     nac = 0;
-/*@-dependenttrans -unrecog@*/
     dt[nac] = DT_DIR;  nav[nac++] = t; t = stpcpy(t, ".");     t++;
     dt[nac] = DT_DIR;  nav[nac++] = t; t = stpcpy(t, "..");    t++;
-/*@=dependenttrans =unrecog@*/
 
     /* Copy DAV items into DIR elments. */
     ac = 0;
@@ -1667,10 +1522,7 @@ fprintf(stderr, "*** davOpendir(%s)\n", path);
 
     ctx = fetch_destroy_context(ctx);
 
-/*@-kepttrans@*/
     return (DIR *) avdir;
-/*@=kepttrans@*/
 }
 
 #endif /* WITH_NEON */
-/*@=modfilesys@*/
index 8a07224..2db4248 100644 (file)
@@ -37,13 +37,11 @@ typedef DIR *                       DAVDIR;
 
 /**
  */
-/*@unchecked@*/
 extern int avmagicdir;
 #define ISAVMAGIC(_dir) (!memcmp((_dir), &avmagicdir, sizeof(avmagicdir)))
 
 /**
  */
-/*@unchecked@*/
 extern int davmagicdir;
 #define ISDAVMAGIC(_dir) (!memcmp((_dir), &davmagicdir, sizeof(davmagicdir)))
 
@@ -56,29 +54,21 @@ extern "C" {
  * @param dir          argv DIR
  * @return             0 always
  */
-int avClosedir(/*@only@*/ DIR * dir)
-       /*@globals fileSystem @*/
-       /*@modifies dir, fileSystem @*/;
+int avClosedir(DIR * dir);
 
 /**
  * Return next entry from an argv directory.
  * @param dir          argv DIR
  * @return             next entry
  */
-/*@dependent@*/ /*@null@*/
-struct dirent * avReaddir(DIR * dir)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+struct dirent * avReaddir(DIR * dir);
 
 /**
  * Create an argv directory from URL collection.
  * @param path         URL for collection path
  * @return             argv DIR
  */
-/*@null@*/
-DIR * avOpendir(const char * path)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+DIR * avOpendir(const char * path);
 
 /**
  * Send a http request.
@@ -87,9 +77,7 @@ DIR * avOpendir(const char * path)
  * @param httpArg      http command argument (NULL if none)
  * @returns            0 on success
  */
-int davReq(FD_t ctrl, const char * httpCmd, /*@null@*/ const char * httpArg)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies ctrl, fileSystem, internalState @*/;
+int davReq(FD_t ctrl, const char * httpCmd, const char * httpArg);
 
 /**
  * Read a http response.
@@ -98,112 +86,75 @@ int davReq(FD_t ctrl, const char * httpCmd, /*@null@*/ const char * httpArg)
  * @retval *str                error msg               
  * @returns            0 on success
  */
-int davResp(urlinfo u, FD_t ctrl, /*@out@*/ /*@null@*/ char *const * str)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies ctrl, *str, fileSystem, internalState @*/;
+int davResp(urlinfo u, FD_t ctrl, char *const * str);
 
 /**
  */
-/*@null@*/
-FD_t davOpen(const char * url, /*@unused@*/ int flags,
-               /*@unused@*/ mode_t mode, /*@out@*/ urlinfo * uret)
-        /*@globals internalState @*/
-        /*@modifies *uret, internalState @*/;
+FD_t davOpen(const char * url, int flags,
+               mode_t mode, urlinfo * uret);
 
 /**
  */
-/*@-incondefs@*/
-ssize_t davRead(void * cookie, /*@out@*/ char * buf, size_t count)
-        /*@globals fileSystem, internalState @*/
-        /*@modifies buf, fileSystem, internalState @*/
-       /*@requires maxSet(buf) >= (count - 1) @*/
-       /*@ensures maxRead(buf) == result @*/;
-/*@=incondefs@*/
+ssize_t davRead(void * cookie, char * buf, size_t count);
 
 /**
  */
-ssize_t davWrite(void * cookie, const char * buf, size_t count)
-        /*@globals fileSystem, internalState @*/
-        /*@modifies fileSystem, internalState @*/;
+ssize_t davWrite(void * cookie, const char * buf, size_t count);
 
 /**
  */
-int davSeek(void * cookie, _libio_pos_t pos, int whence)
-        /*@globals fileSystem, internalState @*/
-        /*@modifies fileSystem, internalState @*/;
+int davSeek(void * cookie, _libio_pos_t pos, int whence);
 
 /**
  */
-int davClose(void * cookie)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies cookie, fileSystem, internalState @*/;
+int davClose(void * cookie);
 
 /**
  */
-int davMkdir(const char * path, mode_t mode)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int davMkdir(const char * path, mode_t mode);
 
 /**
  */
-int davRmdir(const char * path)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int davRmdir(const char * path);
 
 /**
  */
-int davRename(const char * oldpath, const char * newpath)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int davRename(const char * oldpath, const char * newpath);
 
 /**
  */
-int davUnlink(const char * path)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int davUnlink(const char * path);
 
 /**
  * Close a DAV collection.
  * @param dir          argv DIR
  * @return             0 always
  */
-int davClosedir(/*@only@*/ DIR * dir)
-       /*@globals fileSystem @*/
-       /*@modifies dir, fileSystem @*/;
+int davClosedir(DIR * dir);
 
 /**
  * Return next entry from a DAV collection.
  * @param dir          argv DIR
  * @return             next entry
  */
-/*@dependent@*/ /*@null@*/
-struct dirent * davReaddir(DIR * dir)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+struct dirent * davReaddir(DIR * dir);
 
 /**
  * Create an argv directory from DAV collection.
  * @param path         URL for DAV collection path
  * @return             argv DIR
  */
-/*@null@*/
-DIR * davOpendir(const char * path)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+DIR * davOpendir(const char * path);
 
 /**
  * stat(2) clone.
  */
-int davStat(const char * path, /*@out@*/ struct stat * st)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *st, fileSystem, internalState @*/;
+int davStat(const char * path, struct stat * st);
 
 /**
  * lstat(2) clone.
  */
-int davLstat(const char * path, /*@out@*/ struct stat * st)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *st, fileSystem, internalState @*/;
+int davLstat(const char * path, struct stat * st);
 
 #ifdef __cplusplus
 }
index 9f99fa3..211f1ad 100644 (file)
 /**
  * Tokens used by rpmError().
  */
-/*@-typeuse @*/
 typedef enum rpmerrCode_e {
-/*@-enummemuse@*/
     RPMERR_GDBMOPEN    = _em(2),   /*!< gdbm open failed */
     RPMERR_GDBMREAD    = _em(3),   /*!< gdbm read failed */
     RPMERR_GDBMWRITE   = _em(4),   /*!< gdbm write failed */
-/*@=enummemuse@*/
     RPMERR_INTERNAL    = _em(5),   /*!< internal RPM error */
     RPMERR_DBCORRUPT   = _em(6),   /*!< rpm database is corrupt */
-/*@-enummemuse@*/
     RPMERR_OLDDBCORRUPT        = _em(7),   /*!< old style rpm database is corrupt */
     RPMERR_OLDDBMISSING        = _em(8),   /*!< old style rpm database is missing */
     RPMERR_NOCREATEDB  = _em(9),   /*!< cannot create new database */
-/*@=enummemuse@*/
     RPMERR_DBOPEN      = _em(10),  /*!< database open failed */
     RPMERR_DBGETINDEX  = _em(11),  /*!< database get from index failed */
     RPMERR_DBPUTINDEX  = _em(12),  /*!< database get from index failed */
@@ -44,60 +39,44 @@ typedef enum rpmerrCode_e {
     RPMERR_RENAME      = _em(15),  /*!< rename(2) failed */
     RPMERR_UNLINK      = _em(16),  /*!< unlink(2) failed */
     RPMERR_RMDIR       = _em(17),  /*!< rmdir(2) failed */
-/*@-enummemuse@*/
     RPMERR_PKGINSTALLED        = _em(18),  /*!< package already installed */
     RPMERR_CHOWN       = _em(19),  /*!< chown() call failed */
     RPMERR_NOUSER      = _em(20),  /*!< user does not exist */
     RPMERR_NOGROUP     = _em(21),  /*!< group does not exist */
-/*@=enummemuse@*/
     RPMERR_MKDIR       = _em(22),  /*!< mkdir() call failed */
-/*@-enummemuse@*/
     RPMERR_FILECONFLICT        = _em(23),  /*!< file being installed exists */
-/*@=enummemuse@*/
     RPMERR_RPMRC       = _em(24),  /*!< bad line in rpmrc */
     RPMERR_NOSPEC      = _em(25),  /*!< .spec file is missing */
     RPMERR_NOTSRPM     = _em(26),  /*!< a source rpm was expected */
-/*@-enummemuse@*/
     RPMERR_FLOCK       = _em(27),  /*!< locking the database failed */
     RPMERR_OLDPACKAGE  = _em(28),  /*!< trying upgrading to old version */
 /*     RPMERR_BADARCH  = _em(29),  bad architecture or arch mismatch */
-/*@=enummemuse@*/
     RPMERR_CREATE      = _em(30),  /*!< failed to create a file */
     RPMERR_NOSPACE     = _em(31),  /*!< out of disk space */
-/*@-enummemuse@*/
     RPMERR_NORELOCATE  = _em(32),  /*!< tried to do improper relocatation */
 /*     RPMERR_BADOS    = _em(33),  bad architecture or arch mismatch */
     RPMMESS_BACKUP     = _em(34),  /*!< backup made during [un]install */
-/*@=enummemuse@*/
     RPMERR_MTAB                = _em(35),  /*!< failed to read mount table */
     RPMERR_STAT                = _em(36),  /*!< failed to stat something */
     RPMERR_BADDEV      = _em(37),  /*!< file on device not listed in mtab */
-/*@-enummemuse@*/
     RPMMESS_ALTNAME    = _em(38),  /*!< file written as .rpmnew */
     RPMMESS_PREREQLOOP = _em(39),  /*!< loop in prerequisites */
     RPMERR_BADRELOCATE = _em(40),  /*!< bad relocation was specified */
     RPMERR_OLDDB       = _em(41),  /*!< old format database */
-/*@=enummemuse@*/
 
     RPMERR_UNMATCHEDIF = _em(107), /*!< unclosed %ifarch or %ifos */
     RPMERR_RELOAD      = _em(108), /*!< */
     RPMERR_BADARG      = _em(109), /*!< */
     RPMERR_SCRIPT      = _em(110), /*!< errors related to script exec */
     RPMERR_READ                = _em(111), /*!< */
-/*@-enummemuse@*/
     RPMERR_UNKNOWNOS   = _em(112), /*!< */
     RPMERR_UNKNOWNARCH = _em(113), /*!< */
-/*@=enummemuse@*/
     RPMERR_EXEC                = _em(114), /*!< */
     RPMERR_FORK                = _em(115), /*!< */
     RPMERR_CPIO                = _em(116), /*!< */
-/*@-enummemuse@*/
     RPMERR_GZIP                = _em(117), /*!< */
-/*@=enummemuse@*/
     RPMERR_BADSPEC     = _em(118), /*!< */
-/*@-enummemuse@*/
     RPMERR_LDD         = _em(119), /*!< couldn't understand ldd output */
-/*@=enummemuse@*/
     RPMERR_BADFILENAME = _em(120), /*!< */
     RPMERR_OPEN                = _em(121), /*!< */
     RPMERR_POPEN       = _em(122), /*!< */
@@ -105,11 +84,9 @@ typedef enum rpmerrCode_e {
     RPMERR_QUERY       = _em(124), /*!< */
     RPMERR_QFMT                = _em(125), /*!< */
     RPMERR_DBCONFIG    = _em(126), /*!< */
-/*@-enummemuse@*/
     RPMERR_DBERR       = _em(127), /*!< */
     RPMERR_BADPACKAGE  = _em(128), /*!< getNextHeader: %s */
     RPMERR_FREELIST    = _em(129), /*!< free list corrupt (%u)- please ... */
-/*@=enummemuse@*/
     RPMERR_DATATYPE    = _em(130), /*!< Data type %d not supported */
     RPMERR_BUILDROOT   = _em(131), /*!< */
     RPMERR_MAKETEMP    = _em(132), /*!< makeTempFile failed */
@@ -131,11 +108,8 @@ typedef enum rpmerrCode_e {
 
     RPMDEBUG_UNLINK    = _dm(512u+16), /*!< unlink(2) failed */
     RPMDEBUG_RMDIR     = _dm(512u+17), /*!< rmdir(2) failed */
-/*@-enummemuse@*/
     RPMWARN_FLOCK      = _wm(512u+27)  /*!< locking the database failed */
-/*@=enummemuse@*/
 } rpmerrCode;
-/*@=typeuse @*/
 
 /**
  * Retrofit rpmError() onto rpmlog sub-system.
@@ -144,9 +118,7 @@ typedef enum rpmerrCode_e {
 #define        rpmErrorCode()                  rpmlogCode()
 #define        rpmErrorString()                rpmlogMessage()
 #define        rpmErrorSetCallback(_cb)        rpmlogSetCallback(_cb)
-/*@-typeuse@*/
 typedef rpmlogCallback rpmErrorCallBackType;
-/*@=typeuse@*/
 
 
 #endif  /* H_RPMERR */
index 87e251e..a597944 100644 (file)
@@ -1,4 +1,3 @@
-/*@-bounds@*/
 #include "system.h"
 
 #include <stdlib.h>
@@ -19,7 +18,6 @@ typedef struct rpmhookItem_s {
 
 typedef struct rpmhookBucket_s {
     unsigned long hash;
-/*@relnull@*/
     char *name;
     rpmhookItem item;
 } * rpmhookBucket;
@@ -46,9 +44,7 @@ rpmhookArgs rpmhookArgsFree(rpmhookArgs args)
     return NULL;
 }
 
-/*@only@*/
 static rpmhookTable rpmhookTableNew(int size)
-       /*@*/
 {
     rpmhookTable table = (rpmhookTable) xcalloc(1,
                sizeof(*table) + sizeof(table->bucket) * (size-1));
@@ -58,7 +54,6 @@ static rpmhookTable rpmhookTableNew(int size)
 
 #if 0
 static rpmhookTable rpmhookTableFree(rpmhookTable table)
-       /*@*/
 {
     rpmhookItem item, nextItem;
     int i;
@@ -78,11 +73,9 @@ static rpmhookTable rpmhookTableFree(rpmhookTable table)
 }
 #endif
 
-static void rpmhookTableRehash(rpmhookTable *table)
-       /*@modifies *table @*/;
+static void rpmhookTableRehash(rpmhookTable *table);
 
 static int rpmhookTableFindBucket(rpmhookTable *table, const char *name)
-       /*@modifies *table @*/
 {
     /* Hash based on http://www.isthe.com/chongo/tech/comp/fnv/ */
     unsigned long perturb;
@@ -104,9 +97,7 @@ static int rpmhookTableFindBucket(rpmhookTable *table, const char *name)
     while (bucket->name &&
            (bucket->hash != hash || strcmp(bucket->name, name) != 0)) {
        /* Collision resolution based on Python's perturb scheme. */
-/*@-shiftimplementation@*/
        ret = ((ret << 2) + ret + perturb + 1) % (*table)->size;
-/*@=shiftimplementation@*/
        perturb >>= 5;
        bucket = &(*table)->bucket[ret];
     }
@@ -116,12 +107,10 @@ static int rpmhookTableFindBucket(rpmhookTable *table, const char *name)
 }
 
 static void rpmhookTableRehash(rpmhookTable *table)
-       /*@modifies *table @*/
 {
     rpmhookTable newtable = rpmhookTableNew((*table)->size*2);
     int n, i = 0;
 
-/*@-branchstate@*/
     for (; i != (*table)->size; i++) {
        if ((*table)->bucket[i].name == NULL)
            continue;
@@ -129,17 +118,13 @@ static void rpmhookTableRehash(rpmhookTable *table)
        newtable->bucket[n].name = (*table)->bucket[i].name;
        newtable->bucket[n].item = (*table)->bucket[i].item;
     }
-/*@=branchstate@*/
     newtable->used = (*table)->used;
-/*@-unqualifiedtrans@*/
     free(*table);
-/*@=unqualifiedtrans@*/
     *table = newtable;
 }
 
 static void rpmhookTableAddItem(rpmhookTable *table, const char *name,
                                rpmhookFunc func, void *data)
-       /*@modifies *table @*/
 {
     int n = rpmhookTableFindBucket(table, name);
     rpmhookBucket bucket = &(*table)->bucket[n];
@@ -151,15 +136,12 @@ static void rpmhookTableAddItem(rpmhookTable *table, const char *name,
     while (*item) item = &(*item)->next;
     *item = xcalloc(1, sizeof(**item));
     (*item)->func = func;
-/*@-temptrans@*/
     (*item)->data = data;
-/*@=temptrans@*/
 }
 
 static void rpmhookTableDelItem(rpmhookTable *table, const char *name,
-               /*@null@*/ rpmhookFunc func, /*@null@*/ void *data,
+               rpmhookFunc func, void *data,
                int matchfunc, int matchdata)
-       /*@modifies *table @*/
 {
     int n = rpmhookTableFindBucket(table, name);
     rpmhookBucket bucket = &(*table)->bucket[n];
@@ -168,7 +150,6 @@ static void rpmhookTableDelItem(rpmhookTable *table, const char *name,
     rpmhookItem nextItem;
     while (item) {
        nextItem = item->next;
-/*@-branchstate@*/
        if ((!matchfunc || item->func == func) &&
            (!matchdata || item->data == data)) {
            free(item);
@@ -179,8 +160,6 @@ static void rpmhookTableDelItem(rpmhookTable *table, const char *name,
        } else {
            lastItem = item;
        }
-/*@=branchstate@*/
-/*@-usereleased@*/
        item = nextItem;
     }
     if (!bucket->item) {
@@ -188,38 +167,32 @@ static void rpmhookTableDelItem(rpmhookTable *table, const char *name,
        bucket->name = NULL;
        (*table)->used--;
     }
-/*@=usereleased@*/
 }
 
 static rpmhookArgs rpmhookArgsParse(const char *argt, va_list ap)
-       /*@*/
 {
     rpmhookArgs args = rpmhookArgsNew(strlen(argt));
     int i;
 
-/*@-temptrans@*/
     args->argt = argt;
-/*@=temptrans@*/
     for (i = 0; i != args->argc; i++) {
        switch (argt[i]) {
            case 's':
                args->argv[i].s = va_arg(ap, char *);
-               /*@switchbreak@*/ break;
+               break;
            case 'i':
                args->argv[i].i = va_arg(ap, int);
-               /*@switchbreak@*/ break;
+               break;
            case 'f':
                args->argv[i].f = (float)va_arg(ap, double);
-               /*@switchbreak@*/ break;
+               break;
            case 'p':
                args->argv[i].p = va_arg(ap, void *);
-               /*@switchbreak@*/ break;
+               break;
            default:
-/*@-modfilesys @*/
                fprintf(stderr, "error: unsupported type '%c' as "
                                "a hook argument\n", argt[i]);
-/*@=modfilesys @*/
-               /*@switchbreak@*/ break;
+               break;
        }
     }
     return args;
@@ -227,7 +200,6 @@ static rpmhookArgs rpmhookArgsParse(const char *argt, va_list ap)
 
 static void rpmhookTableCallArgs(rpmhookTable *table, const char *name,
                        rpmhookArgs args)
-       /*@modifies *table @*/
 {
     int n = rpmhookTableFindBucket(table, name);
     rpmhookItem item = (*table)->bucket[n].item;
@@ -238,12 +210,9 @@ static void rpmhookTableCallArgs(rpmhookTable *table, const char *name,
     }
 }
 
-/*@unchecked@*/ /*@only@*/ /*@null@*/
 static rpmhookTable globalTable = NULL;
 
 void rpmhookRegister(const char *name, rpmhookFunc func, void *data)
-       /*@globals globalTable @*/
-       /*@modifies globalTable @*/
 {
     if (globalTable == NULL)
        globalTable = rpmhookTableNew(RPMHOOK_TABLE_INITSIZE);
@@ -275,9 +244,7 @@ void rpmhookCall(const char *name, const char *argt, ...)
        va_list ap;
        va_start(ap, argt);
        args = rpmhookArgsParse(argt, ap);
-/*@-noeffect@*/
        rpmhookTableCallArgs(&globalTable, name, args);
-/*@=noeffect@*/
        (void) rpmhookArgsFree(args);
        va_end(ap);
     }
@@ -285,9 +252,6 @@ void rpmhookCall(const char *name, const char *argt, ...)
 
 void rpmhookCallArgs(const char *name, rpmhookArgs args)
 {
-/*@-noeffect@*/
     if (globalTable != NULL)
        rpmhookTableCallArgs(&globalTable, name, args);
-/*@=noeffect@*/
 }
-/*@=bounds@*/
index 9250676..c049c48 100644 (file)
@@ -2,11 +2,9 @@
 #define RPMHOOK_H
 
 typedef union {
-/*@observer@*/
     const char * s;
     int i;
     float f;
-/*@observer@*/
     void * p;
 } rpmhookArgv;
 
@@ -18,26 +16,14 @@ typedef struct rpmhookArgs_s {
 
 typedef int (*rpmhookFunc) (rpmhookArgs args, void *data);
 
-/*@only@*/
-rpmhookArgs rpmhookArgsNew(int argc)
-       /*@*/;
-/*@null@*/
-rpmhookArgs rpmhookArgsFree(/*@only@*/ /*@null@*/ rpmhookArgs args)
-       /*@modifies args @*/;
+rpmhookArgs rpmhookArgsNew(int argc);
+rpmhookArgs rpmhookArgsFree(rpmhookArgs args);
 
-void rpmhookRegister(const char *name, rpmhookFunc func, void *data)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/;
-void rpmhookUnregister(const char *name, rpmhookFunc func, void *data)
-       /*@*/;
-void rpmhookUnregisterAny(const char *name, rpmhookFunc func)
-       /*@*/;
-void rpmhookUnregisterAll(const char *name)
-       /*@*/;
-void rpmhookCall(const char *name, const char *argt, ...)
-       /*@*/;
-void rpmhookCallArgs(const char *name, rpmhookArgs args)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/;
+void rpmhookRegister(const char *name, rpmhookFunc func, void *data);
+void rpmhookUnregister(const char *name, rpmhookFunc func, void *data);
+void rpmhookUnregisterAny(const char *name, rpmhookFunc func);
+void rpmhookUnregisterAll(const char *name);
+void rpmhookCall(const char *name, const char *argt, ...);
+void rpmhookCallArgs(const char *name, rpmhookArgs args);
 
 #endif
index 92306b9..7e57487 100644 (file)
@@ -27,7 +27,6 @@
 
 /* XXX HP-UX w/o -D_XOPEN_SOURCE needs */
 #if !defined(HAVE_HERRNO) && (defined(__hpux))
-/*@unchecked@*/
 extern int h_errno;
 #endif
 
@@ -40,7 +39,6 @@ extern int h_errno;
 
 #if !defined(HAVE_INET_ATON)
 static int inet_aton(const char *cp, struct in_addr *inp)
-       /*@modifies *inp @*/
 {
     long addr;
 
@@ -74,8 +72,6 @@ static int inet_aton(const char *cp, struct in_addr *inp)
 #include "debug.h"
 
 /*@access FILE @*/     /* XXX to permit comparison/conversion with void *. */
-/*@access urlinfo @*/
-/*@access FDSTAT_t @*/
 
 #define FDNREFS(fd)    (fd ? ((FD_t)fd)->nrefs : -9)
 #define FDTO(fd)       (fd ? ((FD_t)fd)->rd_timeoutsecs : -99)
@@ -91,7 +87,6 @@ static int inet_aton(const char *cp, struct in_addr *inp)
 
 /**
  */
-/*@unchecked@*/
 #if _USE_LIBIO
 int noLibio = 0;
 #else
@@ -102,32 +97,26 @@ int noLibio = 1;
 
 /**
  */
-/*@unchecked@*/
 static int ftpTimeoutSecs = TIMEOUT_SECS;
 
 /**
  */
-/*@unchecked@*/
 static int httpTimeoutSecs = TIMEOUT_SECS;
 
 /**
  */
-/*@unchecked@*/
 int _rpmio_debug = 0;
 
 /**
  */
-/*@unchecked@*/
 int _av_debug = 0;
 
 /**
  */
-/*@unchecked@*/
 int _ftp_debug = 0;
 
 /**
  */
-/*@unchecked@*/
 int _dav_debug = 0;
 
 /**
@@ -135,9 +124,8 @@ int _dav_debug = 0;
  * @param p            memory to free
  * @retval             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
-       /*@modifies p@*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
@@ -145,9 +133,7 @@ _free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
 
 /* =============================================================== */
 
-/*@-boundswrite@*/
-static /*@observer@*/ const char * fdbg(/*@null@*/ FD_t fd)
-       /*@*/
+static const char * fdbg(FD_t fd)
 {
     static char buf[BUFSIZ];
     char *be = buf;
@@ -190,11 +176,9 @@ static /*@observer@*/ const char * fdbg(/*@null@*/ FD_t fd)
            sprintf(be, "BZD %p fdno %d", fps->fp, fps->fdno);
 #endif
        } else if (fps->io == fpio) {
-           /*@+voidabstract@*/
            sprintf(be, "%s %p(%d) fdno %d",
                (fps->fdno < 0 ? "LIBIO" : "FP"),
                fps->fp, fileno(((FILE *)fps->fp)), fps->fdno);
-           /*@=voidabstract@*/
        } else {
            sprintf(be, "??? io %p fp %p fdno %d ???",
                fps->io, fps->fp, fps->fdno);
@@ -204,7 +188,6 @@ static /*@observer@*/ const char * fdbg(/*@null@*/ FD_t fd)
     }
     return buf;
 }
-/*@=boundswrite@*/
 
 /* =============================================================== */
 off_t fdSize(FD_t fd)
@@ -223,7 +206,6 @@ DBGIO(0, (stderr, "==>\tfdSize(%p) rc %ld\n", fd, (long)rc));
     case URL_IS_UNKNOWN:
        if (fstat(Fileno(fd), &sb) == 0)
            rc = sb.st_size;
-       /*@fallthrough@*/
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
     case URL_IS_HKP:
@@ -244,12 +226,11 @@ FD_t fdDup(int fdno)
     fd = fdNew("open (fdDup)");
     fdSetFdno(fd, nfdno);
 DBGIO(fd, (stderr, "==> fdDup(%d) fd %p %s\n", fdno, (fd ? fd : NULL), fdbg(fd)));
-    /*@-refcounttrans@*/ return fd; /*@=refcounttrans@*/
+    return fd;
 }
 
-static inline /*@unused@*/ int fdSeekNot(void * cookie,
-               /*@unused@*/ _libio_pos_t pos,  /*@unused@*/ int whence)
-       /*@*/
+static inline int fdSeekNot(void * cookie,
+               _libio_pos_t pos,  int whence)
 {
     FD_t fd = c2f(cookie);
     FDSANE(fd);                /* XXX keep gcc quiet */
@@ -274,16 +255,13 @@ DBGIO(fd, (stderr, "==> fdFdopen(%p,\"%s\") fdno %d -> fp %p fdno %d\n", cookie,
 #endif
 
 /* =============================================================== */
-/*@-mustmod@*/ /* FIX: cookie is modified */
-static inline /*@null@*/ FD_t XfdLink(void * cookie, const char * msg,
+/* FIX: cookie is modified */
+static inline FD_t XfdLink(void * cookie, const char * msg,
                const char * file, unsigned line)
-       /*@modifies *cookie @*/
 {
     FD_t fd;
 if (cookie == NULL)
-    /*@-castexpose@*/
 DBGREFS(0, (stderr, "--> fd  %p ++ %d %s at %s:%u\n", cookie, FDNREFS(cookie)+1, msg, file, line));
-    /*@=castexpose@*/
     fd = c2f(cookie);
     if (fd) {
        fd->nrefs++;
@@ -291,12 +269,10 @@ DBGREFS(fd, (stderr, "--> fd  %p ++ %d %s at %s:%u %s\n", fd, fd->nrefs, msg, fi
     }
     return fd;
 }
-/*@=mustmod@*/
 
-static inline /*@null@*/
-FD_t XfdFree( /*@killref@*/ FD_t fd, const char *msg,
+static inline
+FD_t XfdFree( FD_t fd, const char *msg,
                const char *file, unsigned line)
-       /*@modifies fd @*/
 {
        int i;
 
@@ -306,7 +282,7 @@ DBGREFS(0, (stderr, "--> fd  %p -- %d %s at %s:%u\n", fd, FDNREFS(fd), msg, file
     if (fd) {
 DBGREFS(fd, (stderr, "--> fd  %p -- %d %s at %s:%u %s\n", fd, fd->nrefs, msg, file, line, fdbg(fd)));
        if (--fd->nrefs > 0)
-           /*@-refcounttrans -retalias@*/ return fd; /*@=refcounttrans =retalias@*/
+           return fd;
        fd->stats = _free(fd->stats);
        for (i = fd->ndigests - 1; i >= 0; i--) {
            FDDIGEST_t fddig = fd->digests + i;
@@ -316,15 +292,13 @@ DBGREFS(fd, (stderr, "--> fd  %p -- %d %s at %s:%u %s\n", fd, fd->nrefs, msg, fi
            fddig->hashctx = NULL;
        }
        fd->ndigests = 0;
-       /*@-refcounttrans@*/ free(fd); /*@=refcounttrans@*/
+       free(fd);
     }
     return NULL;
 }
 
-static inline /*@null@*/
+static inline
 FD_t XfdNew(const char * msg, const char * file, unsigned line)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/
 {
     FD_t fd = xcalloc(1, sizeof(*fd));
     if (fd == NULL) /* XXX xmalloc never returns NULL */
@@ -360,11 +334,7 @@ FD_t XfdNew(const char * msg, const char * file, unsigned line)
     return XfdLink(fd, msg, file, line);
 }
 
-static ssize_t fdRead(void * cookie, /*@out@*/ char * buf, size_t count)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies buf, errno, fileSystem, internalState @*/
-       /*@requires maxSet(buf) >= (count - 1) @*/
-       /*@ensures maxRead(buf) == result @*/
+static ssize_t fdRead(void * cookie, char * buf, size_t count)
 {
     FD_t fd = c2f(cookie);
     ssize_t rc;
@@ -372,7 +342,6 @@ static ssize_t fdRead(void * cookie, /*@out@*/ char * buf, size_t count)
     if (fd->bytesRemain == 0) return 0;        /* XXX simulate EOF */
 
     fdstat_enter(fd, FDSTAT_READ);
-/*@-boundswrite@*/
     /* HACK: flimsy wiring for davRead */
     if (fd->req != NULL) {
 #ifdef WITH_NEON
@@ -385,7 +354,6 @@ static ssize_t fdRead(void * cookie, /*@out@*/ char * buf, size_t count)
            fd->bytesRemain = 0;
     } else
        rc = read(fdFileno(fd), buf, (count > fd->bytesRemain ? fd->bytesRemain : count));
-/*@=boundswrite@*/
     fdstat_exit(fd, FDSTAT_READ, rc);
 
     if (fd->ndigests && rc > 0) fdUpdateDigests(fd, (void *)buf, rc);
@@ -396,8 +364,6 @@ DBGIO(fd, (stderr, "==>\tfdRead(%p,%p,%ld) rc %ld %s\n", cookie, buf, (long)coun
 }
 
 static ssize_t fdWrite(void * cookie, const char * buf, size_t count)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/
 {
     FD_t fd = c2f(cookie);
     int fdno = fdFileno(fd);
@@ -410,7 +376,6 @@ static ssize_t fdWrite(void * cookie, const char * buf, size_t count)
     if (count == 0) return 0;
 
     fdstat_enter(fd, FDSTAT_WRITE);
-/*@-boundsread@*/
     /* HACK: flimsy wiring for davWrite */
     if (fd->req != NULL) {
 #ifdef WITH_NEON
@@ -420,7 +385,6 @@ static ssize_t fdWrite(void * cookie, const char * buf, size_t count)
 #endif
     } else
        rc = write(fdno, buf, (count > fd->bytesRemain ? fd->bytesRemain : count));
-/*@=boundsread@*/
     fdstat_exit(fd, FDSTAT_WRITE, rc);
 
 DBGIO(fd, (stderr, "==>\tfdWrite(%p,%p,%ld) rc %ld %s\n", cookie, buf, (long)count, (long)rc, fdbg(fd)));
@@ -429,8 +393,6 @@ DBGIO(fd, (stderr, "==>\tfdWrite(%p,%p,%ld) rc %ld %s\n", cookie, buf, (long)cou
 }
 
 static inline int fdSeek(void * cookie, _libio_pos_t pos, int whence)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
 #ifdef USE_COOKIE_SEEK_POINTER
     _IO_off64_t p = *pos;
@@ -450,9 +412,7 @@ DBGIO(fd, (stderr, "==>\tfdSeek(%p,%ld,%d) rc %lx %s\n", cookie, (long)p, whence
     return rc;
 }
 
-static int fdClose( /*@only@*/ void * cookie)
-       /*@globals errno, fileSystem, systemState, internalState @*/
-       /*@modifies errno, fileSystem, systemState, internalState @*/
+static int fdClose( void * cookie)
 {
     FD_t fd;
     int fdno;
@@ -466,7 +426,6 @@ static int fdClose( /*@only@*/ void * cookie)
 
     fdstat_enter(fd, FDSTAT_CLOSE);
     /* HACK: flimsy wiring for davClose */
-/*@-branchstate@*/
     if (fd->req != NULL) {
 #ifdef WITH_NEON
        rc = davClose(fd);
@@ -475,7 +434,6 @@ static int fdClose( /*@only@*/ void * cookie)
 #endif
     } else
        rc = ((fdno >= 0) ? close(fdno) : -2);
-/*@=branchstate@*/
     fdstat_exit(fd, FDSTAT_CLOSE, rc);
 
 DBGIO(fd, (stderr, "==>\tfdClose(%p) rc %lx %s\n", (fd ? fd : NULL), (unsigned long)rc, fdbg(fd)));
@@ -484,9 +442,7 @@ DBGIO(fd, (stderr, "==>\tfdClose(%p) rc %lx %s\n", (fd ? fd : NULL), (unsigned l
     return rc;
 }
 
-static /*@null@*/ FD_t fdOpen(const char *path, int flags, mode_t mode)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/
+static FD_t fdOpen(const char *path, int flags, mode_t mode)
 {
     FD_t fd;
     int fdno;
@@ -501,16 +457,15 @@ static /*@null@*/ FD_t fdOpen(const char *path, int flags, mode_t mode)
     fdSetFdno(fd, fdno);
     fd->flags = flags;
 DBGIO(fd, (stderr, "==>\tfdOpen(\"%s\",%x,0%o) %s\n", path, (unsigned)flags, (unsigned)mode, fdbg(fd)));
-    /*@-refcounttrans@*/ return fd; /*@=refcounttrans@*/
+    return fd;
 }
 
-/*@-type@*/ /* LCL: function typedefs */
+/* LCL: function typedefs */
 static struct FDIO_s fdio_s = {
   fdRead, fdWrite, fdSeek, fdClose, XfdLink, XfdFree, XfdNew, fdFileno,
   fdOpen, NULL, fdGetFp, NULL, mkdir, chdir, rmdir, rename, unlink
 };
-/*@=type@*/
-FDIO_t fdio = /*@-compmempass@*/ &fdio_s /*@=compmempass@*/ ;
+FDIO_t fdio = &fdio_s ;
 
 int fdWritable(FD_t fd, int secs)
 {
@@ -544,9 +499,7 @@ int fdWritable(FD_t fd, int secs)
            tvp->tv_usec = 0;
        }
        FD_SET(fdno, &wrfds);
-/*@-compdef -nullpass@*/
        rc = select(fdno + 1, NULL, &wrfds, NULL, tvp);
-/*@=compdef =nullpass@*/
 #endif
 
        /* HACK: EBADF on PUT chunked termination from ufdClose. */
@@ -556,15 +509,14 @@ fprintf(stderr, "*** fdWritable fdno %d rc %d %s\n", fdno, rc, strerror(errno));
            switch (errno) {
            case EINTR:
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            default:
                return rc;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            }
        }
        return rc;
     } while (1);
-    /*@notreached@*/
 }
 
 int fdReadable(FD_t fd, int secs)
@@ -599,27 +551,23 @@ int fdReadable(FD_t fd, int secs)
            tvp->tv_usec = 0;
        }
        FD_SET(fdno, &rdfds);
-       /*@-compdef -nullpass@*/
        rc = select(fdno + 1, &rdfds, NULL, NULL, tvp);
-       /*@=compdef =nullpass@*/
 #endif
 
        if (rc < 0) {
            switch (errno) {
            case EINTR:
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            default:
                return rc;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            }
        }
        return rc;
     } while (1);
-    /*@notreached@*/
 }
 
-/*@-boundswrite@*/
 int fdFgets(FD_t fd, char * buf, size_t len)
 {
     int fdno;
@@ -641,13 +589,13 @@ int fdFgets(FD_t fd, char * buf, size_t len)
        case -1:        /* error */
            ec = -1;
            continue;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        case  0:        /* timeout */
            ec = -1;
            continue;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        default:        /* data to read */
-           /*@switchbreak@*/ break;
+           break;
        }
 
        errno = 0;
@@ -661,9 +609,9 @@ int fdFgets(FD_t fd, char * buf, size_t len)
            switch (errno) {
            case EWOULDBLOCK:
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            default:
-               /*@switchbreak@*/ break;
+               break;
            }
 if (_rpmio_debug)
 fprintf(stderr, "*** read: fd %p rc %d errno %d %s \"%s\"\n", fd, rc, errno, strerror(errno), buf);
@@ -682,7 +630,6 @@ fprintf(stderr, "*** read: fd %p rc %d EOF errno %d %s \"%s\"\n", fd, rc, errno,
 
     return (ec >= 0 ? nb : ec);
 }
-/*@=boundswrite@*/
 
 /* =============================================================== */
 /* Support for FTP/HTTP I/O.
@@ -745,7 +692,6 @@ const char * ftpStrerror(int errorNumber)
 const char *urlStrerror(const char *url)
 {
     const char *retstr;
-    /*@-branchstate@*/
     switch (urlIsURL(url)) {
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
@@ -762,50 +708,36 @@ const char *urlStrerror(const char *url)
        retstr = strerror(errno);
        break;
     }
-    /*@=branchstate@*/
     return retstr;
 }
 
 #if !defined(HAVE_GETADDRINFO)
 #if !defined(USE_ALT_DNS) || !USE_ALT_DNS 
 static int mygethostbyname(const char * host,
-               /*@out@*/ struct in_addr * address)
-       /*@globals h_errno @*/
-       /*@modifies *address @*/
+               struct in_addr * address)
 {
     struct hostent * hostinfo;
 
-    /*@-multithreaded @*/
     hostinfo = gethostbyname(host);
-    /*@=multithreaded @*/
     if (!hostinfo) return 1;
 
-/*@-boundswrite@*/
     memcpy(address, hostinfo->h_addr_list[0], sizeof(*address));
-/*@=boundswrite@*/
     return 0;
 }
 #endif
 
-/*@-boundsread@*/
 /*@-compdef@*/ /* FIX: address->s_addr undefined. */
-static int getHostAddress(const char * host, /*@out@*/ struct in_addr * address)
-       /*@globals errno, h_errno @*/
-       /*@modifies *address, errno @*/
+static int getHostAddress(const char * host, struct in_addr * address)
 {
 #if 0  /* XXX workaround nss_foo module hand-off using valgrind. */
     if (!strcmp(host, "localhost")) {
-       /*@-moduncon @*/
        if (!inet_aton("127.0.0.1", address))
            return FTPERR_BAD_HOST_ADDR;
-       /*@=moduncon @*/
     } else
 #endif
     if (xisdigit(host[0])) {
-       /*@-moduncon @*/
        if (!inet_aton(host, address))
            return FTPERR_BAD_HOST_ADDR;
-       /*@=moduncon @*/
     } else {
        if (mygethostbyname(host, address)) {
            errno = h_errno;
@@ -815,13 +747,9 @@ static int getHostAddress(const char * host, /*@out@*/ struct in_addr * address)
     
     return 0;
 }
-/*@=compdef@*/
-/*@=boundsread@*/
 #endif
 
 static int tcpConnect(FD_t ctrl, const char * host, int port)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies ctrl, fileSystem, internalState @*/
 {
     int fdno = -1;
     int rc;
@@ -850,7 +778,7 @@ static int tcpConnect(FD_t ctrl, const char * host, int port)
                getnameinfo(res->ai_addr, res->ai_addrlen, hbuf, sizeof(hbuf),
                                NULL, 0, NI_NUMERICHOST);
                fprintf(stderr,"++ connect [%s]:%d on fdno %d\n",
-                               /*@-unrecog@*/ hbuf /*@=unrecog@*/, port, fdno);
+                               hbuf, port, fdno);
            }
            break;
        }
@@ -862,9 +790,7 @@ static int tcpConnect(FD_t ctrl, const char * host, int port)
 #else  /* HAVE_GETADDRINFO */                      
     struct sockaddr_in sin;
 
-/*@-boundswrite@*/
     memset(&sin, 0, sizeof(sin));
-/*@=boundswrite@*/
     sin.sin_family = AF_INET;
     sin.sin_port = htons(port);
     sin.sin_addr.s_addr = INADDR_ANY;
@@ -878,12 +804,10 @@ static int tcpConnect(FD_t ctrl, const char * host, int port)
        break;
     }
 
-    /*@-internalglobs@*/
     if (connect(fdno, (struct sockaddr *) &sin, sizeof(sin))) {
        rc = FTPERR_FAILED_CONNECT;
        break;
     }
-    /*@=internalglobs@*/
   } while (0);
 
     if (rc < 0)
@@ -891,9 +815,8 @@ static int tcpConnect(FD_t ctrl, const char * host, int port)
 
 if (_ftp_debug)
 fprintf(stderr,"++ connect %s:%d on fdno %d\n",
-/*@-unrecog -moduncon -evalorderuncon @*/
 inet_ntoa(sin.sin_addr)
-/*@=unrecog =moduncon =evalorderuncon @*/ ,
+,
 (int)ntohs(sin.sin_port), fdno);
 #endif /* HAVE_GETADDRINFO */
 
@@ -901,19 +824,14 @@ inet_ntoa(sin.sin_addr)
     return 0;
 
 errxit:
-    /*@-observertrans@*/
     fdSetSyserrno(ctrl, errno, ftpStrerror(rc));
-    /*@=observertrans@*/
     if (fdno >= 0)
        (void) close(fdno);
     return rc;
 }
 
-/*@-boundswrite@*/
 static int checkResponse(void * uu, FD_t ctrl,
-               /*@out@*/ int *ecp, /*@out@*/ char ** str)
-       /*@globals fileSystem @*/
-       /*@modifies ctrl, *ecp, *str, fileSystem @*/
+               int *ecp, char ** str)
 {
     urlinfo u = uu;
     char *buf;
@@ -962,7 +880,7 @@ static int checkResponse(void * uu, FD_t ctrl,
                if (se > s && se[-1] == '\r')
                   se[-1] = '\0';
                if (*se == '\0')
-                   /*@innerbreak@*/ break;
+                   break;
 
 if (_ftp_debug)
 fprintf(stderr, "<- %s\n", s);
@@ -970,7 +888,7 @@ fprintf(stderr, "<- %s\n", s);
                /* HTTP: header termination on empty line */
                if (*s == '\0') {
                    moretodo = 0;
-                   /*@innerbreak@*/ break;
+                   break;
                }
                *se++ = '\0';
 
@@ -991,7 +909,7 @@ fprintf(stderr, "<- %s\n", s);
                            strncpy(errorCode, e, 3);
                        errorCode[3] = '\0';
                    }
-                   /*@innercontinue@*/ continue;
+                   continue;
                }
 
                /* HTTP: look for "token: ..." */
@@ -1037,7 +955,7 @@ fprintf(stderr, "<- %s\n", s);
                    if (!strncmp(s, "Allow:", ne)) {
                    }
 #endif
-                   /*@innercontinue@*/ continue;
+                   continue;
                }
 
                /* HTTP: look for "<TITLE>501 ... </TITLE>" */
@@ -1072,11 +990,8 @@ fprintf(stderr, "<- %s\n", s);
 
     return ec;
 }
-/*@=boundswrite@*/
 
-static int ftpCheckResponse(urlinfo u, /*@out@*/ char ** str)
-       /*@globals fileSystem @*/
-       /*@modifies u, *str, fileSystem @*/
+static int ftpCheckResponse(urlinfo u, char ** str)
 {
     int ec = 0;
     int rc;
@@ -1087,10 +1002,10 @@ static int ftpCheckResponse(urlinfo u, /*@out@*/ char ** str)
     switch (ec) {
     case 550:
        return FTPERR_FILE_NOT_FOUND;
-       /*@notreached@*/ break;
+       break;
     case 552:
        return FTPERR_NIC_ABORT_IN_PROGRESS;
-       /*@notreached@*/ break;
+       break;
     default:
        if (ec >= 400 && ec <= 599) {
            return FTPERR_BAD_SERVER_RESPONSE;
@@ -1101,8 +1016,6 @@ static int ftpCheckResponse(urlinfo u, /*@out@*/ char ** str)
 }
 
 static int ftpCommand(urlinfo u, char ** str, ...)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies u, *str, fileSystem, internalState @*/
 {
     va_list ap;
     int len = 0;
@@ -1119,7 +1032,6 @@ static int ftpCommand(urlinfo u, char ** str, ...)
     len += sizeof("\r\n")-1;
     va_end(ap);
 
-/*@-boundswrite@*/
     t = te = alloca(len + 1);
 
     va_start(ap, str);
@@ -1129,7 +1041,6 @@ static int ftpCommand(urlinfo u, char ** str, ...)
     }
     te = stpcpy(te, "\r\n");
     va_end(ap);
-/*@=boundswrite@*/
 
 if (_ftp_debug)
 fprintf(stderr, "-> %s", t);
@@ -1141,8 +1052,6 @@ fprintf(stderr, "-> %s", t);
 }
 
 static int ftpLogin(urlinfo u)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies u, fileSystem, internalState @*/
 {
     const char * host;
     const char * user;
@@ -1160,34 +1069,25 @@ static int ftpLogin(urlinfo u)
 
     if ((port = (u->proxyp > 0 ? u->proxyp : u->port)) < 0) port = IPPORT_FTP;
 
-    /*@-branchstate@*/
     if ((user = (u->proxyu ? u->proxyu : u->user)) == NULL)
        user = "anonymous";
-    /*@=branchstate@*/
 
-    /*@-branchstate@*/
     if ((password = u->password) == NULL) {
        uid_t uid = getuid();
        struct passwd * pw;
        if (uid && (pw = getpwuid(uid)) != NULL) {
-/*@-boundswrite@*/
            char *myp = alloca(strlen(pw->pw_name) + sizeof("@"));
            strcpy(myp, pw->pw_name);
            strcat(myp, "@");
-/*@=boundswrite@*/
            password = myp;
        } else {
            password = "root@";
        }
     }
-    /*@=branchstate@*/
 
-    /*@-branchstate@*/
     if (fdFileno(u->ctrl) >= 0 && fdWritable(u->ctrl, 0) < 1)
-       /*@-refcounttrans@*/ (void) fdClose(u->ctrl); /*@=refcounttrans@*/
-    /*@=branchstate@*/
+       (void) fdClose(u->ctrl);
 
-/*@-usereleased@*/
     if (fdFileno(u->ctrl) < 0) {
        rc = tcpConnect(u->ctrl, host, port);
        if (rc < 0)
@@ -1206,23 +1106,14 @@ static int ftpLogin(urlinfo u)
     if ((rc = ftpCommand(u, NULL, "TYPE", "I", NULL)))
        goto errxit;
 
-    /*@-compdef@*/
     return 0;
-    /*@=compdef@*/
 
 errxit:
-    /*@-observertrans@*/
     fdSetSyserrno(u->ctrl, errno, ftpStrerror(rc));
-    /*@=observertrans@*/
 errxit2:
-    /*@-branchstate@*/
     if (fdFileno(u->ctrl) >= 0)
-       /*@-refcounttrans@*/ (void) fdClose(u->ctrl); /*@=refcounttrans@*/
-    /*@=branchstate@*/
-    /*@-compdef@*/
+       (void) fdClose(u->ctrl);
     return rc;
-    /*@=compdef@*/
-/*@=usereleased@*/
 }
 
 int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
@@ -1240,7 +1131,6 @@ int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
     int epsv;
     int port;
 
-/*@-boundswrite@*/
     URLSANE(u);
     if (ftpCmd == NULL)
        return FTPERR_UNKNOWN;  /* XXX W2DO? */
@@ -1347,7 +1237,6 @@ int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
     while (*chptr++ != '\0') {
        if (*chptr == ',') *chptr = '.';
     }
-/*@=boundswrite@*/
     sprintf(remoteIP, "%s", passReply);
     } /* if (epsv) */
 
@@ -1415,12 +1304,10 @@ int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
     dataAddress.sin_family = AF_INET;
     dataAddress.sin_port = htons(port);
 
-    /*@-moduncon@*/
     if (!inet_aton(remoteIP, &dataAddress.sin_addr)) {
        rc = FTPERR_PASSIVE_ERROR;
        goto errxit;
     }
-    /*@=moduncon@*/
 
     rc = socket(AF_INET, SOCK_STREAM, IPPROTO_IP);
     fdSetFdno(data, (rc >= 0 ? rc : -1));
@@ -1434,7 +1321,6 @@ int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
     /* XXX setsockopt SO_KEEPALIVE */
     /* XXX setsockopt SO_TOS IPTOS_THROUGHPUT */
 
-    /*@-internalglobs@*/
     while (connect(fdFileno(data), (struct sockaddr *) &dataAddress, 
                sizeof(dataAddress)) < 0)
     {
@@ -1443,7 +1329,6 @@ int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
        rc = FTPERR_FAILED_DATA_CONNECT;
        goto errxit;
     }
-    /*@=internalglobs@*/
 #endif /* HAVE_GETADDRINFO */
 
 if (_ftp_debug)
@@ -1463,23 +1348,16 @@ fprintf(stderr, "-> %s", cmd);
     return 0;
 
 errxit:
-    /*@-observertrans@*/
     fdSetSyserrno(u->ctrl, errno, ftpStrerror(rc));
-    /*@=observertrans@*/
-    /*@-branchstate@*/
     if (fdFileno(data) >= 0)
-       /*@-refcounttrans@*/ (void) fdClose(data); /*@=refcounttrans@*/
-    /*@=branchstate@*/
+       (void) fdClose(data);
     return rc;
 }
 
-/*@unchecked@*/ /*@null@*/
 static rpmCallbackFunction     urlNotify = NULL;
 
-/*@unchecked@*/ /*@null@*/
 static void *                  urlNotifyData = NULL;
 
-/*@unchecked@*/
 static int                     urlNotifyCount = -1;
 
 void urlSetCallback(rpmCallbackFunction notify, void *notifyData, int notifyCount) {
@@ -1497,12 +1375,9 @@ int ufdCopy(FD_t sfd, FD_t tfd)
     int notifier = -1;
 
     if (urlNotify) {
-/*@-boundsread@*/
-       /*@-noeffectuncon @*/ /* FIX: check rc */
+       /* FIX: check rc */
        (void)(*urlNotify) (NULL, RPMCALLBACK_INST_OPEN_FILE,
                0, 0, NULL, urlNotifyData);
-       /*@=noeffectuncon @*/
-/*@=boundsread@*/
     }
     
     while (1) {
@@ -1526,12 +1401,9 @@ int ufdCopy(FD_t sfd, FD_t tfd)
        if (urlNotify && urlNotifyCount > 0) {
            int n = itemsCopied/urlNotifyCount;
            if (n != notifier) {
-/*@-boundsread@*/
-               /*@-noeffectuncon @*/ /* FIX: check rc */
+               /* FIX: check rc */
                (void)(*urlNotify) (NULL, RPMCALLBACK_INST_PROGRESS,
                        itemsCopied, 0, NULL, urlNotifyData);
-               /*@=noeffectuncon @*/
-/*@=boundsread@*/
                notifier = n;
            }
        }
@@ -1541,20 +1413,15 @@ int ufdCopy(FD_t sfd, FD_t tfd)
        ftpStrerror(rc)));
 
     if (urlNotify) {
-/*@-boundsread@*/
-       /*@-noeffectuncon @*/ /* FIX: check rc */
+       /* FIX: check rc */
        (void)(*urlNotify) (NULL, RPMCALLBACK_INST_OPEN_FILE,
                itemsCopied, itemsCopied, NULL, urlNotifyData);
-       /*@=noeffectuncon @*/
-/*@=boundsread@*/
     }
     
     return rc;
 }
 
-static int urlConnect(const char * url, /*@out@*/ urlinfo * uret)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies *uret, fileSystem, internalState @*/
+static int urlConnect(const char * url, urlinfo * uret)
 {
     urlinfo u;
     int rc = 0;
@@ -1589,10 +1456,8 @@ static int urlConnect(const char * url, /*@out@*/ urlinfo * uret)
        }
     }
 
-/*@-boundswrite@*/
     if (uret != NULL)
        *uret = urlLink(u, "urlConnect");
-/*@=boundswrite@*/
     u = urlFree(u, "urlSplit (urlConnect)");   
 
     return rc;
@@ -1642,8 +1507,6 @@ int ftpCmd(const char * cmd, const char * url, const char * arg2)
 #endif
 
 static int ftpAbort(urlinfo u, FD_t data)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies u, data, fileSystem, internalState @*/
 {
     static unsigned char ipbuf[3] = { IAC, IP, IAC };
     FD_t ctrl;
@@ -1662,15 +1525,14 @@ static int ftpAbort(urlinfo u, FD_t data)
 
     DBGIO(0, (stderr, "-> ABOR\n"));
 
-/*@-usereleased -compdef@*/
     if (send(fdFileno(ctrl), ipbuf, sizeof(ipbuf), MSG_OOB) != sizeof(ipbuf)) {
-       /*@-refcounttrans@*/ (void) fdClose(ctrl); /*@=refcounttrans@*/
+       (void) fdClose(ctrl);
        return FTPERR_SERVER_IO_ERROR;
     }
 
     sprintf(u->buf, "%cABOR\r\n",(char) DM);
     if (fdWrite(ctrl, u->buf, 7) != 7) {
-       /*@-refcounttrans@*/ (void) fdClose(ctrl); /*@=refcounttrans@*/
+       (void) fdClose(ctrl);
        return FTPERR_SERVER_IO_ERROR;
     }
 
@@ -1679,10 +1541,8 @@ static int ftpAbort(urlinfo u, FD_t data)
        tosecs = data->rd_timeoutsecs;
        data->rd_timeoutsecs = 10;
        if (fdReadable(data, data->rd_timeoutsecs) > 0) {
-/*@-boundswrite@*/
            while (timedRead(data, u->buf, u->bufAlloced) > 0)
                u->buf[0] = '\0';
-/*@=boundswrite@*/
        }
        data->rd_timeoutsecs = tosecs;
        /* XXX ftp abort needs to close the data channel to receive status */
@@ -1701,12 +1561,9 @@ static int ftpAbort(urlinfo u, FD_t data)
     u->ctrl->rd_timeoutsecs = tosecs;
 
     return rc;
-/*@=usereleased =compdef@*/
 }
 
 static int ftpFileDone(urlinfo u, FD_t data)
-       /*@globals fileSystem @*/
-       /*@modifies u, data, fileSystem @*/
 {
     int rc = 0;
 
@@ -1722,9 +1579,7 @@ static int ftpFileDone(urlinfo u, FD_t data)
     return rc;
 }
 
-static int httpResp(urlinfo u, FD_t ctrl, /*@out@*/ char ** str)
-       /*@globals fileSystem @*/
-       /*@modifies ctrl, *str, fileSystem @*/
+static int httpResp(urlinfo u, FD_t ctrl, char ** str)
 {
     int ec = 0;
     int rc;
@@ -1752,8 +1607,6 @@ fprintf(stderr, "*** httpResp: rc %d ec %d\n", rc, ec);
 }
 
 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;
@@ -1778,18 +1631,13 @@ assert(ctrl != NULL);
 
     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@*/
+       (void) fdClose(ctrl);
     }
-    /*@=branchstate@*/
 
-/*@-usereleased@*/
     if (fdFileno(ctrl) < 0) {
        rc = tcpConnect(ctrl, host, port);
        if (rc < 0)
@@ -1806,7 +1654,6 @@ Transfer-Encoding: chunked\r\n\
 \r\n\
 ") + strlen(httpCmd) + strlen(path) + sizeof(VERSION) + strlen(hthost) + 20;
 
-/*@-boundswrite@*/
     req = alloca(len);
     *req = '\0';
 
@@ -1828,7 +1675,6 @@ Accept: text/plain\r\n\
 \r\n\
 ",     httpCmd, path, (u->httpVersion ? 1 : 0), VERSION, hthost, port);
 }
-/*@=boundswrite@*/
 
 if (_ftp_debug)
 fprintf(stderr, "-> %s", req);
@@ -1839,7 +1685,6 @@ fprintf(stderr, "-> %s", req);
        goto errxit;
     }
 
-    /*@-branchstate@*/
     if (!strcmp(httpCmd, "PUT")) {
        ctrl->wr_chunked = 1;
     } else {
@@ -1849,28 +1694,22 @@ fprintf(stderr, "-> %s", req);
        if (rc) {
            if (!retrying) {    /* not HTTP_OK */
                retrying = 1;
-               /*@-refcounttrans@*/ (void) fdClose(ctrl); /*@=refcounttrans@*/
+               (void) fdClose(ctrl);
                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@*/
+       (void) fdClose(ctrl);
     return rc;
-/*@=usereleased@*/
 }
 
 /* XXX DYING: unused */
@@ -1883,11 +1722,7 @@ void * ufdGetUrlinfo(FD_t fd)
 }
 
 /* =============================================================== */
-static ssize_t ufdRead(void * cookie, /*@out@*/ char * buf, size_t count)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies buf, fileSystem, internalState @*/
-        /*@requires maxSet(buf) >= (count - 1) @*/
-        /*@ensures maxRead(buf) == result @*/
+static ssize_t ufdRead(void * cookie, char * buf, size_t count)
 {
     FD_t fd = c2f(cookie);
     int bytesRead;
@@ -1919,30 +1754,28 @@ static ssize_t ufdRead(void * cookie, /*@out@*/ char * buf, size_t count)
        case -1:        /* error */
        case  0:        /* timeout */
            return total;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        default:        /* data to read */
-           /*@switchbreak@*/ break;
+           break;
        }
 
-/*@-boundswrite@*/
        rc = fdRead(fd, buf + total, count - total);
-/*@=boundswrite@*/
 
        if (rc < 0) {
            switch (errno) {
            case EWOULDBLOCK:
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            default:
-               /*@switchbreak@*/ break;
+               break;
            }
 if (_rpmio_debug)
 fprintf(stderr, "*** read: rc %d errno %d %s \"%s\"\n", rc, errno, strerror(errno), buf);
            return rc;
-           /*@notreached@*/ break;
+           break;
        } else if (rc == 0) {
            return total;
-           /*@notreached@*/ break;
+           break;
        }
        bytesRead = rc;
     }
@@ -1951,8 +1784,6 @@ fprintf(stderr, "*** read: rc %d errno %d %s \"%s\"\n", rc, errno, strerror(errn
 }
 
 static ssize_t ufdWrite(void * cookie, const char * buf, size_t count)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     FD_t fd = c2f(cookie);
     int bytesWritten;
@@ -1986,9 +1817,9 @@ fprintf(stderr, "*** ufdWrite fd %p WRITE PAST END OF CONTENT\n", fd);
        case -1:        /* error */
        case  0:        /* timeout */
            return total;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        default:        /* data to write */
-           /*@switchbreak@*/ break;
+           break;
        }
 
        rc = fdWrite(fd, buf + total, count - total);
@@ -1997,17 +1828,17 @@ fprintf(stderr, "*** ufdWrite fd %p WRITE PAST END OF CONTENT\n", fd);
            switch (errno) {
            case EWOULDBLOCK:
                continue;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            default:
-               /*@switchbreak@*/ break;
+               break;
            }
 if (_rpmio_debug)
 fprintf(stderr, "*** write: rc %d errno %d %s \"%s\"\n", rc, errno, strerror(errno), buf);
            return rc;
-           /*@notreached@*/ break;
+           break;
        } else if (rc == 0) {
            return total;
-           /*@notreached@*/ break;
+           break;
        }
        bytesWritten = rc;
     }
@@ -2016,8 +1847,6 @@ fprintf(stderr, "*** write: rc %d errno %d %s \"%s\"\n", rc, errno, strerror(err
 }
 
 static inline int ufdSeek(void * cookie, _libio_pos_t pos, int whence)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     FD_t fd = c2f(cookie);
 
@@ -2032,20 +1861,18 @@ static inline int ufdSeek(void * cookie, _libio_pos_t pos, int whence)
     case URL_IS_DASH:
     default:
         return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return fdSeek(cookie, pos, whence);
 }
 
-/*@-branchstate@*/
 /*@-usereleased@*/     /* LCL: fd handling is tricky here. */
-int ufdClose( /*@only@*/ void * cookie)
+int ufdClose( void * cookie)
 {
     FD_t fd = c2f(cookie);
 
     UFDONLY(fd);
 
-    /*@-branchstate@*/
     if (fd->url) {
        urlinfo u = fd->url;
 
@@ -2061,11 +1888,9 @@ int ufdClose( /*@only@*/ void * cookie)
 
            /* XXX if not using libio, lose the fp from fpio */
            {   FILE * fp;
-               /*@+voidabstract -nullpass@*/
                fp = fdGetFILE(fd);
                if (noLibio && fp)
                    fdSetFp(fd, NULL);
-               /*@=voidabstract =nullpass@*/
            }
 
            /*
@@ -2092,16 +1917,13 @@ int ufdClose( /*@only@*/ void * cookie)
            } else {
                int rc;
                /* XXX STOR et al require close before ftpFileDone */
-               /*@-refcounttrans@*/
                rc = fdClose(fd);
-               /*@=refcounttrans@*/
 #if 0  /* XXX error exit from ufdOpen does not have this set */
                assert(fd->ftpFileDoneNeeded != 0);
 #endif
-               /*@-compdef@*/ /* FIX: u->data undefined */
+               /* FIX: u->data undefined */
                if (fd->ftpFileDoneNeeded)
                    (void) ftpFileDone(u, fd);
-               /*@=compdef@*/
                return rc;
            }
        }
@@ -2130,11 +1952,9 @@ int ufdClose( /*@only@*/ void * cookie)
 
            /* XXX if not using libio, lose the fp from fpio */
            {   FILE * fp;
-               /*@+voidabstract -nullpass@*/
                fp = fdGetFILE(fd);
                if (noLibio && fp)
                    fdSetFp(fd, NULL);
-               /*@=voidabstract =nullpass@*/
            }
 
            /* If content remains, then don't persist. */
@@ -2149,13 +1969,10 @@ int ufdClose( /*@only@*/ void * cookie)
     }
     return fdClose(fd);
 }
-/*@=usereleased@*/
-/*@=branchstate@*/
 
 /*@-nullstate@*/       /* FIX: u->{ctrl,data}->url undef after XurlLink. */
-/*@null@*/ FD_t ftpOpen(const char *url, /*@unused@*/ int flags,
-               /*@unused@*/ mode_t mode, /*@out@*/ urlinfo *uret)
-       /*@modifies *uret @*/
+FD_t ftpOpen(const char *url, int flags,
+               mode_t mode, urlinfo *uret)
 {
     urlinfo u = NULL;
     FD_t fd = NULL;
@@ -2184,22 +2001,15 @@ int ufdClose( /*@only@*/ void * cookie)
     }
 
 exit:
-/*@-boundswrite@*/
     if (uret)
        *uret = u;
-/*@=boundswrite@*/
-    /*@-refcounttrans@*/
     return fd;
-    /*@=refcounttrans@*/
 }
-/*@=nullstate@*/
 
 #ifndef WITH_NEON
-/*@-nullstate@*/        /* FIX: u->{ctrl,data}->url undef after XurlLink. */
-static /*@null@*/ FD_t httpOpen(const char * url, /*@unused@*/ int flags,
-                /*@unused@*/ mode_t mode, /*@out@*/ urlinfo * uret)
-        /*@globals internalState @*/
-        /*@modifies *uret, internalState @*/
+       /* FIX: u->{ctrl,data}->url undef after XurlLink. */
+static FD_t httpOpen(const char * url, int flags,
+                mode_t mode, urlinfo * uret)
 {
     urlinfo u = NULL;
     FD_t fd = NULL;
@@ -2233,20 +2043,13 @@ static /*@null@*/ FD_t httpOpen(const char * url, /*@unused@*/ int flags,
     }
 
 exit:
-/*@-boundswrite@*/
     if (uret)
         *uret = u;
-/*@=boundswrite@*/
-    /*@-refcounttrans@*/
     return fd;
-    /*@=refcounttrans@*/
 }
-/*@=nullstate@*/
 #endif
 
-static /*@null@*/ FD_t ufdOpen(const char * url, int flags, mode_t mode)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+static FD_t ufdOpen(const char * url, int flags, mode_t mode)
 {
     FD_t fd = NULL;
     const char * cmd;
@@ -2257,7 +2060,6 @@ static /*@null@*/ FD_t ufdOpen(const char * url, int flags, mode_t mode)
 if (_rpmio_debug)
 fprintf(stderr, "*** ufdOpen(%s,0x%x,0%o)\n", url, (unsigned)flags, (unsigned)mode);
 
-    /*@-branchstate@*/
     switch (urlType) {
     case URL_IS_FTP:
        fd = ftpOpen(url, flags, mode, &u);
@@ -2330,7 +2132,6 @@ fprintf(stderr, "*** ufdOpen(%s,0x%x,0%o)\n", url, (unsigned)flags, (unsigned)mo
        }
        break;
     }
-    /*@=branchstate@*/
 
     if (fd == NULL) return NULL;
     fd->urlType = urlType;
@@ -2342,35 +2143,28 @@ DBGIO(fd, (stderr, "==>\tufdOpen(\"%s\",%x,0%o) %s\n", url, (unsigned)flags, (un
     return fd;
 }
 
-/*@-type@*/ /* LCL: function typedefs */
+/* LCL: function typedefs */
 static struct FDIO_s ufdio_s = {
   ufdRead, ufdWrite, ufdSeek, ufdClose, XfdLink, XfdFree, XfdNew, fdFileno,
   ufdOpen, NULL, fdGetFp, NULL,        Mkdir, Chdir, Rmdir, Rename, Unlink
 };
-/*@=type@*/
-FDIO_t ufdio = /*@-compmempass@*/ &ufdio_s /*@=compmempass@*/ ;
+FDIO_t ufdio = &ufdio_s ;
 
 /* =============================================================== */
 /* Support for GZIP library.
  */
 #ifdef HAVE_ZLIB_H
-/*@-moduncon@*/
 
-/*@-noparams@*/
 #include <zlib.h>
-/*@=noparams@*/
 
-static inline /*@dependent@*/ /*@null@*/ void * gzdFileno(FD_t fd)
-       /*@*/
+static inline void * gzdFileno(FD_t fd)
 {
     void * rc = NULL;
     int i;
 
     FDSANE(fd);
     for (i = fd->nfps; i >= 0; i--) {
-/*@-boundsread@*/
        FDSTACK_t * fps = &fd->fps[i];
-/*@=boundsread@*/
        if (fps->io != gzdio)
            continue;
        rc = fps->fp;
@@ -2380,10 +2174,8 @@ static inline /*@dependent@*/ /*@null@*/ void * gzdFileno(FD_t fd)
     return rc;
 }
 
-static /*@null@*/
+static
 FD_t gzdOpen(const char * path, const char * fmode)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     FD_t fd;
     gzFile gzfile;
@@ -2396,9 +2188,7 @@ DBGIO(fd, (stderr, "==>\tgzdOpen(\"%s\", \"%s\") fd %p %s\n", path, fmode, (fd ?
     return fdLink(fd, "gzdOpen");
 }
 
-static /*@null@*/ FD_t gzdFdopen(void * cookie, const char *fmode)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+static FD_t gzdFdopen(void * cookie, const char *fmode)
 {
     FD_t fd = c2f(cookie);
     int fdno;
@@ -2417,8 +2207,6 @@ static /*@null@*/ FD_t gzdFdopen(void * cookie, const char *fmode)
 }
 
 static int gzdFlush(FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     gzFile gzfile;
     gzfile = gzdFileno(fd);
@@ -2427,9 +2215,7 @@ static int gzdFlush(FD_t fd)
 }
 
 /* =============================================================== */
-static ssize_t gzdRead(void * cookie, /*@out@*/ char * buf, size_t count)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies buf, fileSystem, internalState @*/
+static ssize_t gzdRead(void * cookie, char * buf, size_t count)
 {
     FD_t fd = c2f(cookie);
     gzFile gzfile;
@@ -2458,8 +2244,6 @@ DBGIO(fd, (stderr, "==>\tgzdRead(%p,%p,%u) rc %lx %s\n", cookie, buf, (unsigned)
 }
 
 static ssize_t gzdWrite(void * cookie, const char * buf, size_t count)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     FD_t fd = c2f(cookie);
     gzFile gzfile;
@@ -2490,8 +2274,6 @@ DBGIO(fd, (stderr, "==>\tgzdWrite(%p,%p,%u) rc %lx %s\n", cookie, buf, (unsigned
 
 /* XXX zlib-1.0.4 has not */
 static inline int gzdSeek(void * cookie, _libio_pos_t pos, int whence)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
 #ifdef USE_COOKIE_SEEK_POINTER
     _IO_off64_t p = *pos;
@@ -2528,9 +2310,7 @@ DBGIO(fd, (stderr, "==>\tgzdSeek(%p,%ld,%d) rc %lx %s\n", cookie, (long)p, whenc
     return rc;
 }
 
-static int gzdClose( /*@only@*/ void * cookie)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+static int gzdClose( void * cookie)
 {
     FD_t fd = c2f(cookie);
     gzFile gzfile;
@@ -2540,9 +2320,7 @@ static int gzdClose( /*@only@*/ void * cookie)
     if (gzfile == NULL) return -2;     /* XXX can't happen */
 
     fdstat_enter(fd, FDSTAT_CLOSE);
-    /*@-dependenttrans@*/
     rc = gzclose(gzfile);
-    /*@=dependenttrans@*/
 
     /* XXX TODO: preserve fd if errors */
 
@@ -2562,29 +2340,24 @@ DBGIO(fd, (stderr, "==>\tgzdClose(%p) zerror %d %s\n", cookie, rc, fdbg(fd)));
 DBGIO(fd, (stderr, "==>\tgzdClose(%p) rc %lx %s\n", cookie, (unsigned long)rc, fdbg(fd)));
 
     if (_rpmio_debug || rpmIsDebug()) fdstat_print(fd, "GZDIO", stderr);
-    /*@-branchstate@*/
     if (rc == 0)
        fd = fdFree(fd, "open (gzdClose)");
-    /*@=branchstate@*/
     return rc;
 }
 
-/*@-type@*/ /* LCL: function typedefs */
+/* LCL: function typedefs */
 static struct FDIO_s gzdio_s = {
   gzdRead, gzdWrite, gzdSeek, gzdClose, XfdLink, XfdFree, XfdNew, fdFileno,
   NULL, gzdOpen, gzdFileno, gzdFlush,  NULL, NULL, NULL, NULL, NULL
 };
-/*@=type@*/
-FDIO_t gzdio = /*@-compmempass@*/ &gzdio_s /*@=compmempass@*/ ;
+FDIO_t gzdio = &gzdio_s ;
 
-/*@=moduncon@*/
 #endif /* HAVE_ZLIB_H */
 
 /* =============================================================== */
 /* Support for BZIP2 library.
  */
 #if HAVE_BZLIB_H
-/*@-moduncon@*/
 
 #include <bzlib.h>
 
@@ -2598,17 +2371,14 @@ FDIO_t gzdio = /*@-compmempass@*/ &gzdio_s /*@=compmempass@*/ ;
 # define bzwrite BZ2_bzwrite
 #endif /* HAVE_BZ2_1_0 */
 
-static inline /*@dependent@*/ void * bzdFileno(FD_t fd)
-       /*@*/
+static inline void * bzdFileno(FD_t fd)
 {
     void * rc = NULL;
     int i;
 
     FDSANE(fd);
     for (i = fd->nfps; i >= 0; i--) {
-/*@-boundsread@*/
        FDSTACK_t * fps = &fd->fps[i];
-/*@=boundsread@*/
        if (fps->io != bzdio)
            continue;
        rc = fps->fp;
@@ -2618,10 +2388,7 @@ static inline /*@dependent@*/ void * bzdFileno(FD_t fd)
     return rc;
 }
 
-/*@-globuse@*/
-static /*@null@*/ FD_t bzdOpen(const char * path, const char * mode)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
+static FD_t bzdOpen(const char * path, const char * mode)
 {
     FD_t fd;
     BZFILE *bzfile;;
@@ -2631,12 +2398,8 @@ static /*@null@*/ FD_t bzdOpen(const char * path, const char * mode)
     fdPop(fd); fdPush(fd, bzdio, bzfile, -1);
     return fdLink(fd, "bzdOpen");
 }
-/*@=globuse@*/
 
-/*@-globuse@*/
-static /*@null@*/ FD_t bzdFdopen(void * cookie, const char * fmode)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+static FD_t bzdFdopen(void * cookie, const char * fmode)
 {
     FD_t fd = c2f(cookie);
     int fdno;
@@ -2653,23 +2416,15 @@ static /*@null@*/ FD_t bzdFdopen(void * cookie, const char * fmode)
 
     return fdLink(fd, "bzdFdopen");
 }
-/*@=globuse@*/
 
-/*@-globuse@*/
 static int bzdFlush(FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     return bzflush(bzdFileno(fd));
 }
-/*@=globuse@*/
 
 /* =============================================================== */
-/*@-globuse@*/
 /*@-mustmod@*/         /* LCL: *buf is modified */
-static ssize_t bzdRead(void * cookie, /*@out@*/ char * buf, size_t count)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *buf, fileSystem, internalState @*/
+static ssize_t bzdRead(void * cookie, char * buf, size_t count)
 {
     FD_t fd = c2f(cookie);
     BZFILE *bzfile;
@@ -2679,28 +2434,19 @@ static ssize_t bzdRead(void * cookie, /*@out@*/ char * buf, size_t count)
     bzfile = bzdFileno(fd);
     fdstat_enter(fd, FDSTAT_READ);
     if (bzfile)
-       /*@-compdef@*/
        rc = bzread(bzfile, buf, count);
-       /*@=compdef@*/
     if (rc == -1) {
        int zerror = 0;
        if (bzfile)
            fd->errcookie = bzerror(bzfile, &zerror);
     } else if (rc >= 0) {
        fdstat_exit(fd, FDSTAT_READ, rc);
-       /*@-compdef@*/
        if (fd->ndigests && rc > 0) fdUpdateDigests(fd, (void *)buf, rc);
-       /*@=compdef@*/
     }
     return rc;
 }
-/*@=mustmod@*/
-/*@=globuse@*/
 
-/*@-globuse@*/
 static ssize_t bzdWrite(void * cookie, const char * buf, size_t count)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     FD_t fd = c2f(cookie);
     BZFILE *bzfile;
@@ -2721,11 +2467,9 @@ static ssize_t bzdWrite(void * cookie, const char * buf, size_t count)
     }
     return rc;
 }
-/*@=globuse@*/
 
-static inline int bzdSeek(void * cookie, /*@unused@*/ _libio_pos_t pos,
-                       /*@unused@*/ int whence)
-       /*@*/
+static inline int bzdSeek(void * cookie, _libio_pos_t pos,
+                       int whence)
 {
     FD_t fd = c2f(cookie);
 
@@ -2733,9 +2477,7 @@ static inline int bzdSeek(void * cookie, /*@unused@*/ _libio_pos_t pos,
     return -2;
 }
 
-static int bzdClose( /*@only@*/ void * cookie)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+static int bzdClose( void * cookie)
 {
     FD_t fd = c2f(cookie);
     BZFILE *bzfile;
@@ -2745,9 +2487,8 @@ static int bzdClose( /*@only@*/ void * cookie)
 
     if (bzfile == NULL) return -2;
     fdstat_enter(fd, FDSTAT_CLOSE);
-    /*@-noeffectuncon@*/ /* FIX: check rc */
+    /* FIX: check rc */
     bzclose(bzfile);
-    /*@=noeffectuncon@*/
     rc = 0;    /* XXX FIXME */
 
     /* XXX TODO: preserve fd if errors */
@@ -2764,28 +2505,22 @@ static int bzdClose( /*@only@*/ void * cookie)
 DBGIO(fd, (stderr, "==>\tbzdClose(%p) rc %lx %s\n", cookie, (unsigned long)rc, fdbg(fd)));
 
     if (_rpmio_debug || rpmIsDebug()) fdstat_print(fd, "BZDIO", stderr);
-    /*@-branchstate@*/
     if (rc == 0)
        fd = fdFree(fd, "open (bzdClose)");
-    /*@=branchstate@*/
     return rc;
 }
 
-/*@-type@*/ /* LCL: function typedefs */
+/* LCL: function typedefs */
 static struct FDIO_s bzdio_s = {
   bzdRead, bzdWrite, bzdSeek, bzdClose, XfdLink, XfdFree, XfdNew, fdFileno,
   NULL, bzdOpen, bzdFileno, bzdFlush,  NULL, NULL, NULL, NULL, NULL
 };
-/*@=type@*/
-FDIO_t bzdio = /*@-compmempass@*/ &bzdio_s /*@=compmempass@*/ ;
+FDIO_t bzdio = &bzdio_s ;
 
-/*@=moduncon@*/
 #endif /* HAVE_BZLIB_H */
 
 /* =============================================================== */
-/*@observer@*/
 static const char * getFdErrstr (FD_t fd)
-       /*@*/
 {
     const char *errstr = NULL;
 
@@ -2829,15 +2564,11 @@ ssize_t Fread(void *buf, size_t size, size_t nmemb, FD_t fd) {
 DBGIO(fd, (stderr, "==> Fread(%p,%u,%u,%p) %s\n", buf, (unsigned)size, (unsigned)nmemb, (fd ? fd : NULL), fdbg(fd)));
 
     if (fdGetIo(fd) == fpio) {
-       /*@+voidabstract -nullpass@*/
        rc = fread(buf, size, nmemb, fdGetFILE(fd));
-       /*@=voidabstract =nullpass@*/
        return rc;
     }
 
-    /*@-nullderef@*/
     _read = FDIOVEC(fd, read);
-    /*@=nullderef@*/
 
     rc = (_read ? (*_read) (fd, buf, size * nmemb) : -2);
     return rc;
@@ -2852,17 +2583,11 @@ ssize_t Fwrite(const void *buf, size_t size, size_t nmemb, FD_t fd)
 DBGIO(fd, (stderr, "==> Fwrite(%p,%u,%u,%p) %s\n", buf, (unsigned)size, (unsigned)nmemb, (fd ? fd : NULL), fdbg(fd)));
 
     if (fdGetIo(fd) == fpio) {
-/*@-boundsread@*/
-       /*@+voidabstract -nullpass@*/
        rc = fwrite(buf, size, nmemb, fdGetFILE(fd));
-       /*@=voidabstract =nullpass@*/
-/*@=boundsread@*/
        return rc;
     }
 
-    /*@-nullderef@*/
     _write = FDIOVEC(fd, write);
-    /*@=nullderef@*/
 
     rc = (_write ? _write(fd, buf, size * nmemb) : -2);
     return rc;
@@ -2885,16 +2610,12 @@ DBGIO(fd, (stderr, "==> Fseek(%p,%ld,%d) %s\n", fd, (long)offset, whence, fdbg(f
     if (fdGetIo(fd) == fpio) {
        FILE *fp;
 
-       /*@+voidabstract -nullpass@*/
        fp = fdGetFILE(fd);
        rc = fseek(fp, offset, whence);
-       /*@=voidabstract =nullpass@*/
        return rc;
     }
 
-    /*@-nullderef@*/
     _seek = FDIOVEC(fd, seek);
-    /*@=nullderef@*/
 
     rc = (_seek ? _seek(fd, pos, whence) : -2);
     return rc;
@@ -2908,20 +2629,15 @@ int Fclose(FD_t fd)
 DBGIO(fd, (stderr, "==> Fclose(%p) %s\n", (fd ? fd : NULL), fdbg(fd)));
 
     fd = fdLink(fd, "Fclose");
-    /*@-branchstate@*/
     while (fd->nfps >= 0) {
-/*@-boundsread@*/
        FDSTACK_t * fps = &fd->fps[fd->nfps];
-/*@=boundsread@*/
        
        if (fps->io == fpio) {
            FILE *fp;
            int fpno;
 
-           /*@+voidabstract -nullpass@*/
            fp = fdGetFILE(fd);
            fpno = fileno(fp);
-           /*@=voidabstract =nullpass@*/
        /* XXX persistent HTTP/1.1 returns the previously opened fp */
            if (fd->nfps > 0 && fpno == -1 &&
                fd->fps[fd->nfps-1].io == ufdio &&
@@ -2933,10 +2649,7 @@ DBGIO(fd, (stderr, "==> Fclose(%p) %s\n", (fd ? fd : NULL), fdbg(fd)));
                if (fp)
                    rc = fflush(fp);
                fd->nfps--;
-               /*@-refcounttrans@*/
                rc = ufdClose(fd);
-               /*@=refcounttrans@*/
-/*@-usereleased@*/
                if (fdGetFdno(fd) >= 0)
                    break;
                if (!fd->persist)
@@ -2947,17 +2660,11 @@ DBGIO(fd, (stderr, "==> Fclose(%p) %s\n", (fd ? fd : NULL), fdbg(fd)));
                    /* HACK: flimsy Keepalive wiring. */
                    if (hadreqpersist) {
                        fd->nfps--;
-/*@-exposetrans@*/
                        fdSetFp(fd, fp);
-/*@=exposetrans@*/
-/*@-refcounttrans@*/
                        (void) fdClose(fd);
-/*@=refcounttrans@*/
                        fdSetFp(fd, NULL);
                        fd->nfps++;
-/*@-refcounttrans@*/
                        (void) fdClose(fd);
-/*@=refcounttrans@*/
                    } else
                        rc = fclose(fp);
                }
@@ -2973,9 +2680,7 @@ DBGIO(fd, (stderr, "==> Fclose(%p) %s\n", (fd ? fd : NULL), fdbg(fd)));
                }
            }
        } else {
-           /*@-nullderef@*/
            fdio_close_function_t _close = FDIOVEC(fd, close);
-           /*@=nullderef@*/
            rc = _close(fd);
        }
        if (fd->nfps == 0)
@@ -2984,10 +2689,8 @@ DBGIO(fd, (stderr, "==> Fclose(%p) %s\n", (fd ? fd : NULL), fdbg(fd)));
            ec = rc;
        fdPop(fd);
     }
-    /*@=branchstate@*/
     fd = fdFree(fd, "Fclose");
     return ec;
-/*@=usereleased@*/
 }
 
 /**
@@ -3001,12 +2704,10 @@ DBGIO(fd, (stderr, "==> Fclose(%p) %s\n", (fd ? fd : NULL), fdbg(fd)));
  * - bzopen:   's' is smallmode
  * - HACK:     '.' terminates, rest is type of I/O
  */
-/*@-boundswrite@*/
 static inline void cvtfmode (const char *m,
-                               /*@out@*/ char *stdio, size_t nstdio,
-                               /*@out@*/ char *other, size_t nother,
-                               /*@out@*/ const char **end, /*@out@*/ int * f)
-       /*@modifies *stdio, *other, *end, *f @*/
+                               char *stdio, size_t nstdio,
+                               char *other, size_t nother,
+                               const char **end, int * f)
 {
     int flags = 0;
     char c;
@@ -3027,33 +2728,33 @@ static inline void cvtfmode (const char *m,
     default:
        *stdio = '\0';
        return;
-       /*@notreached@*/ break;
+       break;
     }
     m++;
 
     while ((c = *m++) != '\0') {
        switch (c) {
        case '.':
-           /*@switchbreak@*/ break;
+           break;
        case '+':
            flags &= ~(O_RDONLY|O_WRONLY);
            flags |= O_RDWR;
            if (--nstdio > 0) *stdio++ = c;
            continue;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        case 'b':
            if (--nstdio > 0) *stdio++ = c;
            continue;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        case 'x':
            flags |= O_EXCL;
            if (--nstdio > 0) *stdio++ = c;
            continue;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        default:
            if (--nother > 0) *other++ = c;
            continue;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        }
        break;
     }
@@ -3064,7 +2765,6 @@ static inline void cvtfmode (const char *m,
     if (f != NULL)
        *f = flags;
 }
-/*@=boundswrite@*/
 
 #if _USE_LIBIO
 #if defined(__GLIBC__) && __GLIBC__ == 2 && __GLIBC_MINOR__ == 0
@@ -3073,7 +2773,6 @@ typedef _IO_cookie_io_functions_t cookie_io_functions_t;
 #endif
 #endif
 
-/*@-boundswrite@*/
 FD_t Fdopen(FD_t ofd, const char *fmode)
 {
     char stdio[20], other[20], zstdio[20];
@@ -3096,23 +2795,18 @@ fprintf(stderr, "*** Fdopen(%p,%s) %s\n", fd, fmode, fdbg(fd));
     strncat(zstdio, other, sizeof(zstdio) - strlen(zstdio));
 
     if (end == NULL && other[0] == '\0')
-       /*@-refcounttrans -retalias@*/ return fd; /*@=refcounttrans =retalias@*/
+       return fd;
 
-    /*@-branchstate@*/
     if (end && *end) {
        if (!strcmp(end, "fdio")) {
            iof = fdio;
        } else if (!strcmp(end, "gzdio")) {
            iof = gzdio;
-           /*@-internalglobs@*/
            fd = gzdFdopen(fd, zstdio);
-           /*@=internalglobs@*/
 #if HAVE_BZLIB_H
        } else if (!strcmp(end, "bzdio")) {
            iof = bzdio;
-           /*@-internalglobs@*/
            fd = bzdFdopen(fd, zstdio);
-           /*@=internalglobs@*/
 #endif
        } else if (!strcmp(end, "ufdio")) {
            iof = ufdio;
@@ -3121,18 +2815,14 @@ fprintf(stderr, "*** Fdopen(%p,%s) %s\n", fd, fmode, fdbg(fd));
            if (noLibio) {
                int fdno = Fileno(fd);
                FILE * fp = fdopen(fdno, stdio);
-/*@+voidabstract -nullpass@*/
 if (_rpmio_debug)
 fprintf(stderr, "*** Fdopen fpio fp %p\n", (void *)fp);
-/*@=voidabstract =nullpass@*/
                if (fp == NULL)
                    return NULL;
                /* XXX gzdio/bzdio use fp for private data */
-               /*@+voidabstract@*/
                if (fdGetFp(fd) == NULL)
                    fdSetFp(fd, fp);
                fdPush(fd, fpio, fp, fdno);     /* Push fpio onto stack */
-               /*@=voidabstract@*/
            }
        }
     } else if (other[0] != '\0') {
@@ -3140,14 +2830,11 @@ fprintf(stderr, "*** Fdopen fpio fp %p\n", (void *)fp);
            {};
        if (*end == '\0') {
            iof = gzdio;
-           /*@-internalglobs@*/
            fd = gzdFdopen(fd, zstdio);
-           /*@=internalglobs@*/
        }
     }
-    /*@=branchstate@*/
     if (iof == NULL)
-       /*@-refcounttrans -retalias@*/ return fd; /*@=refcounttrans =retalias@*/
+       return fd;
 
     if (!noLibio) {
        FILE * fp = NULL;
@@ -3163,23 +2850,18 @@ DBGIO(fd, (stderr, "==> fopencookie(%p,\"%s\",*%p) returns fp %p\n", fd, stdio,
        }
 #endif
 
-       /*@-branchstate@*/
        if (fp) {
            /* XXX gzdio/bzdio use fp for private data */
-           /*@+voidabstract -nullpass@*/
            if (fdGetFp(fd) == NULL)
                fdSetFp(fd, fp);
            fdPush(fd, fpio, fp, fileno(fp));   /* Push fpio onto stack */
-           /*@=voidabstract =nullpass@*/
            fd = fdLink(fd, "fopencookie");
        }
-       /*@=branchstate@*/
     }
 
 DBGIO(fd, (stderr, "==> Fdopen(%p,\"%s\") returns fd %p %s\n", ofd, fmode, (fd ? fd : NULL), fdbg(fd)));
-    /*@-refcounttrans -retalias@*/ return fd; /*@=refcounttrans =retalias@*/
+    return fd;
 }
-/*@=boundswrite@*/
 
 FD_t Fopen(const char *path, const char *fmode)
 {
@@ -3197,7 +2879,6 @@ FD_t Fopen(const char *path, const char *fmode)
     if (stdio[0] == '\0')
        return NULL;
 
-    /*@-branchstate@*/
     if (end == NULL || !strcmp(end, "fdio")) {
 if (_rpmio_debug)
 fprintf(stderr, "*** Fopen fdio path %s fmode %s\n", path, fmode);
@@ -3218,7 +2899,6 @@ fprintf(stderr, "*** Fopen fdio path %s fmode %s\n", path, fmode);
        case URL_IS_HTTP:
        case URL_IS_HKP:
            isHTTP = 1;
-           /*@fallthrough@*/
        case URL_IS_PATH:
        case URL_IS_DASH:
        case URL_IS_FTP:
@@ -3233,24 +2913,19 @@ fprintf(stderr, "*** Fopen ufdio path %s fmode %s\n", path, fmode);
 if (_rpmio_debug)
 fprintf(stderr, "*** Fopen WTFO path %s fmode %s\n", path, fmode);
            return NULL;
-           /*@notreached@*/ break;
+           break;
        }
 
        /* 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@*/
 
-    /*@-branchstate@*/
     if (fd)
        fd = Fdopen(fd, fmode);
-    /*@=branchstate@*/
     return fd;
 }
 
@@ -3259,9 +2934,7 @@ int Fflush(FD_t fd)
     void * vh;
     if (fd == NULL) return -1;
     if (fdGetIo(fd) == fpio)
-       /*@+voidabstract -nullpass@*/
        return fflush(fdGetFILE(fd));
-       /*@=voidabstract =nullpass@*/
 
     vh = fdGetFp(fd);
     if (vh && fdGetIo(fd) == gzdio)
@@ -3284,15 +2957,11 @@ int Ferror(FD_t fd)
        rc = (fd->syserrno  || fd->errcookie != NULL) ? -1 : 0;
     } else
     for (i = fd->nfps; rc == 0 && i >= 0; i--) {
-/*@-boundsread@*/
        FDSTACK_t * fps = &fd->fps[i];
-/*@=boundsread@*/
        int ec;
        
        if (fps->io == fpio) {
-           /*@+voidabstract -nullpass@*/
            ec = ferror(fdGetFILE(fd));
-           /*@=voidabstract =nullpass@*/
        } else if (fps->io == gzdio) {
            ec = (fd->syserrno || fd->errcookie != NULL) ? -1 : 0;
            i--;        /* XXX fdio under gzdio always has fdno == -1 */
@@ -3322,9 +2991,7 @@ int Fileno(FD_t fd)
        rc = 123456789; /* HACK: https has no steenkin fileno. */
     else
     for (i = fd->nfps ; rc == -1 && i >= 0; i--) {
-/*@-boundsread@*/
        rc = fd->fps[i].fdno;
-/*@=boundsread@*/
     }
     
 DBGIO(fd, (stderr, "==> Fileno(%p) rc %d %s\n", (fd ? fd : NULL), rc, fdbg(fd)));
@@ -3340,7 +3007,6 @@ int Fcntl(FD_t fd, int op, void *lip)
 /* =============================================================== */
 /* Helper routines that may be generally useful.
  */
-/*@-bounds@*/
 int rpmioMkpath(const char * path, mode_t mode, uid_t uid, gid_t gid)
 {
     char * d, * de;
@@ -3365,9 +3031,9 @@ int rpmioMkpath(const char * path, mode_t mode, uid_t uid, gid_t gid)
            switch(errno) {
            default:
                return errno;
-               /*@notreached@*/ /*@switchbreak@*/ break;
+               break;
            case ENOENT:
-               /*@switchbreak@*/ break;
+               break;
            }
            rc = Mkdir(d, mode);
            if (rc)
@@ -3389,9 +3055,7 @@ int rpmioMkpath(const char * path, mode_t mode, uid_t uid, gid_t gid)
                        path, mode);
     return rc;
 }
-/*@=bounds@*/
 
-/*@-boundswrite@*/
 int rpmioSlurp(const char * fn, byte ** bp, ssize_t * blenp)
 {
     static ssize_t blenmax = (32 * BUFSIZ);
@@ -3409,7 +3073,6 @@ int rpmioSlurp(const char * fn, byte ** bp, ssize_t * blenp)
 
     size = fdSize(fd);
     blen = (size >= 0 ? size : blenmax);
-    /*@-branchstate@*/
     if (blen) {
        int nb;
        b = xmalloc(blen+1);
@@ -3425,7 +3088,6 @@ int rpmioSlurp(const char * fn, byte ** bp, ssize_t * blenp)
        }
        b[blen] = '\0';
     }
-    /*@=branchstate@*/
 
 exit:
     if (fd) (void) Fclose(fd);
@@ -3443,12 +3105,10 @@ exit:
 
     return rc;
 }
-/*@=boundswrite@*/
 
-/*@-type@*/ /* LCL: function typedefs */
+/* LCL: function typedefs */
 static struct FDIO_s fpio_s = {
   ufdRead, ufdWrite, fdSeek, ufdClose, XfdLink, XfdFree, XfdNew, fdFileno,
   ufdOpen, NULL, fdGetFp, NULL,        Mkdir, Chdir, Rmdir, Rename, Unlink
 };
-/*@=type@*/
-FDIO_t fpio = /*@-compmempass@*/ &fpio_s /*@=compmempass@*/ ;
+FDIO_t fpio = &fpio_s ;
index 5036678..cb0c40f 100644 (file)
@@ -9,20 +9,18 @@
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <dirent.h>
-/*@-noparams@*/
 #include "glob.h"
-/*@=noparams@*/
 #include <stdio.h>
 #include <stdlib.h>
 #include <unistd.h>
 
 /**
  */
-typedef /*@abstract@*/ struct pgpDig_s * pgpDig;
+typedef struct pgpDig_s * pgpDig;
 
 /**
  */
-typedef /*@abstract@*/ struct pgpDigParams_s * pgpDigParams;
+typedef struct pgpDigParams_s * pgpDigParams;
 
 /** \ingroup rpmio
  * Hide libio API lossage.
@@ -30,7 +28,6 @@ typedef /*@abstract@*/ struct pgpDigParams_s * pgpDigParams;
  * argument as a pointer rather than as an off_t. The snarl below defines
  * typedefs to isolate the lossage.
  */
-/*@{*/
 #if defined(__GLIBC__) && \
        (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2))
 #define USE_COOKIE_SEEK_POINTER 1
@@ -40,15 +37,14 @@ typedef _libio_off_t *      _libio_pos_t;
 typedef off_t          _libio_off_t;
 typedef off_t          _libio_pos_t;
 #endif
-/*@}*/
 
 /** \ingroup rpmio
  */
-typedef        /*@abstract@*/ /*@refcounted@*/ struct _FD_s * FD_t;
+typedef        struct _FD_s * FD_t;
 
 /** \ingroup rpmio
  */
-typedef /*@observer@*/ struct FDIO_s * FDIO_t;
+typedef struct FDIO_s * FDIO_t;
 
 #ifdef __cplusplus
 extern "C" {
@@ -57,146 +53,98 @@ extern "C" {
 /** \ingroup rpmio
  * \name RPMIO Vectors.
  */
-/*@{*/
 
 /**
  */
-typedef ssize_t (*fdio_read_function_t) (void *cookie, char *buf, size_t nbytes)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *cookie, errno, fileSystem @*/
-       /*@requires maxSet(buf) >= (nbytes - 1) @*/
-       /*@ensures maxRead(buf) == result @*/ ;
+typedef ssize_t (*fdio_read_function_t) (void *cookie, char *buf, size_t nbytes);
 
 /**
  */
-typedef ssize_t (*fdio_write_function_t) (void *cookie, const char *buf, size_t nbytes)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *cookie, errno, fileSystem @*/;
+typedef ssize_t (*fdio_write_function_t) (void *cookie, const char *buf, size_t nbytes);
 
 /**
  */
-typedef int (*fdio_seek_function_t) (void *cookie, _libio_pos_t pos, int whence)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *cookie, errno, fileSystem @*/;
+typedef int (*fdio_seek_function_t) (void *cookie, _libio_pos_t pos, int whence);
 
 /**
  */
-typedef int (*fdio_close_function_t) (void *cookie)
-       /*@globals errno, fileSystem, systemState @*/
-       /*@modifies *cookie, errno, fileSystem, systemState @*/;
+typedef int (*fdio_close_function_t) (void *cookie);
 
 
 /**
  */
-typedef /*@only@*/ /*@null@*/ FD_t (*fdio_ref_function_t) ( /*@only@*/ void * cookie,
-               const char * msg, const char * file, unsigned line)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+typedef FD_t (*fdio_ref_function_t) ( void * cookie,
+               const char * msg, const char * file, unsigned line);
 
 /**
  */
-typedef /*@only@*/ /*@null@*/ FD_t (*fdio_deref_function_t) ( /*@only@*/ FD_t fd,
-               const char * msg, const char * file, unsigned line)
-       /*@globals fileSystem @*/
-       /*@modifies fd, fileSystem @*/;
+typedef FD_t (*fdio_deref_function_t) ( FD_t fd,
+               const char * msg, const char * file, unsigned line);
 
 
 /**
  */
-typedef /*@only@*/ /*@null@*/ FD_t (*fdio_new_function_t) (const char * msg,
-               const char * file, unsigned line)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+typedef FD_t (*fdio_new_function_t) (const char * msg,
+               const char * file, unsigned line);
 
 
 /**
  */
-typedef int (*fdio_fileno_function_t) (void * cookie)
-       /*@globals fileSystem @*/
-       /*@modifies *cookie, fileSystem @*/;
+typedef int (*fdio_fileno_function_t) (void * cookie);
 
 
 /**
  */
-typedef FD_t (*fdio_open_function_t) (const char * path, int flags, mode_t mode)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
+typedef FD_t (*fdio_open_function_t) (const char * path, int flags, mode_t mode);
 
 /**
  */
-typedef FD_t (*fdio_fopen_function_t) (const char * path, const char * fmode)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+typedef FD_t (*fdio_fopen_function_t) (const char * path, const char * fmode);
 
 /**
  */
-typedef void * (*fdio_ffileno_function_t) (FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+typedef void * (*fdio_ffileno_function_t) (FD_t fd);
 
 /**
  */
-typedef int (*fdio_fflush_function_t) (FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
-/*@}*/
+typedef int (*fdio_fflush_function_t) (FD_t fd);
 
 
 /** \ingroup rpmrpc
  * \name RPMRPC Vectors.
  */
-/*@{*/
 
 /**
  */
-typedef int (*fdio_mkdir_function_t) (const char * path, mode_t mode)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
+typedef int (*fdio_mkdir_function_t) (const char * path, mode_t mode);
 
 /**
  */
-typedef int (*fdio_chdir_function_t) (const char * path)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
+typedef int (*fdio_chdir_function_t) (const char * path);
 
 /**
  */
-typedef int (*fdio_rmdir_function_t) (const char * path)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
+typedef int (*fdio_rmdir_function_t) (const char * path);
 
 /**
  */
-typedef int (*fdio_rename_function_t) (const char * oldpath, const char * newpath)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
+typedef int (*fdio_rename_function_t) (const char * oldpath, const char * newpath);
 
 /**
  */
-typedef int (*fdio_unlink_function_t) (const char * path)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
-/*@-typeuse@*/
+typedef int (*fdio_unlink_function_t) (const char * path);
 
 /**
  */
-typedef int (*fdio_stat_function_t) (const char * path, /*@out@*/ struct stat * st)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *st, errno, fileSystem @*/;
+typedef int (*fdio_stat_function_t) (const char * path, struct stat * st);
 
 /**
  */
-typedef int (*fdio_lstat_function_t) (const char * path, /*@out@*/ struct stat * st)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *st, errno, fileSystem @*/;
+typedef int (*fdio_lstat_function_t) (const char * path, struct stat * st);
 
 /**
  */
-typedef int (*fdio_access_function_t) (const char * path, int amode)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
-/*@=typeuse@*/
-/*@}*/
+typedef int (*fdio_access_function_t) (const char * path, int amode);
 
 
 /** \ingroup rpmio
@@ -228,331 +176,225 @@ struct FDIO_s {
 /** \ingroup rpmio
  * \name RPMIO Interface.
  */
-/*@{*/
 
 /**
  * strerror(3) clone.
  */
-/*@observer@*/ const char * Fstrerror(/*@null@*/ FD_t fd)
-       /*@*/;
+const char * Fstrerror(FD_t fd);
 
 /**
  * fread(3) clone.
  */
-/*@-incondefs@*/
-ssize_t Fread(/*@out@*/ void * buf, size_t size, size_t nmemb, FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fd, *buf, fileSystem @*/
-       /*@requires maxSet(buf) >= (nmemb - 1) @*/
-       /*@ensures maxRead(buf) == result @*/;
-/*@=incondefs@*/
+ssize_t Fread(void * buf, size_t size, size_t nmemb, FD_t fd);
 
 /**
  * fwrite(3) clone.
  */
-/*@-incondefs@*/
-ssize_t Fwrite(const void * buf, size_t size, size_t nmemb, FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fd, fileSystem @*/
-       /*@requires maxRead(buf) >= nmemb @*/;
-/*@=incondefs@*/
+ssize_t Fwrite(const void * buf, size_t size, size_t nmemb, FD_t fd);
 
 /**
  * fseek(3) clone.
  */
-int Fseek(FD_t fd, _libio_off_t offset, int whence)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+int Fseek(FD_t fd, _libio_off_t offset, int whence);
 
 /**
  * fclose(3) clone.
  */
-int Fclose( /*@killref@*/ FD_t fd)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fd, fileSystem, internalState @*/;
+int Fclose( FD_t fd);
 
 /**
  */
-/*@null@*/ FD_t        Fdopen(FD_t ofd, const char * fmode)
-       /*@globals fileSystem @*/
-       /*@modifies ofd, fileSystem @*/;
+FD_t   Fdopen(FD_t ofd, const char * fmode);
 
 /**
  * fopen(3) clone.
  */
-/*@null@*/ FD_t        Fopen(/*@null@*/ const char * path,
-                       /*@null@*/ const char * fmode)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+FD_t   Fopen(const char * path,
+                       const char * fmode);
 
 
 /**
  * fflush(3) clone.
  */
-int Fflush(/*@null@*/ FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fd, fileSystem @*/;
+int Fflush(FD_t fd);
 
 /**
  * ferror(3) clone.
  */
-int Ferror(/*@null@*/ FD_t fd)
-       /*@*/;
+int Ferror(FD_t fd);
 
 /**
  * fileno(3) clone.
  */
-int Fileno(FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem@*/;
+int Fileno(FD_t fd);
 
 /**
  * fcntl(2) clone.
  */
-/*@unused@*/
-int Fcntl(FD_t fd, int op, void *lip)
-       /*@globals errno, fileSystem @*/
-       /*@modifies fd, *lip, errno, fileSystem @*/;
+int Fcntl(FD_t fd, int op, void *lip);
 
-/*@}*/
 
 /** \ingroup rpmrpc
  * \name RPMRPC Interface.
  */
-/*@{*/
 
 /**
  * mkdir(2) clone.
  */
-int Mkdir(const char * path, mode_t mode)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+int Mkdir(const char * path, mode_t mode);
 
 /**
  * chdir(2) clone.
  */
-int Chdir(const char * path)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+int Chdir(const char * path);
 
 /**
  * rmdir(2) clone.
  */
-int Rmdir(const char * path)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+int Rmdir(const char * path);
 
 /**
  * rename(2) clone.
  */
-int Rename(const char * oldpath, const char * newpath)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+int Rename(const char * oldpath, const char * newpath);
 
 /**
  * link(2) clone.
  */
-int Link(const char * oldpath, const char * newpath)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+int Link(const char * oldpath, const char * newpath);
 
 /**
  * unlink(2) clone.
  */
-int Unlink(const char * path)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+int Unlink(const char * path);
 
 /**
  * readlink(2) clone.
  */
-/*@-incondefs@*/
-int Readlink(const char * path, /*@out@*/ char * buf, size_t bufsiz)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies *buf, errno, fileSystem, internalState @*/
-       /*@requires maxSet(buf) >= (bufsiz - 1) @*/
-       /*@ensures maxRead(buf) <= bufsiz @*/;
-/*@=incondefs@*/
+int Readlink(const char * path, char * buf, size_t bufsiz);
 
 /**
  * stat(2) clone.
  */
-int Stat(const char * path, /*@out@*/ struct stat * st)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies *st, errno, fileSystem, internalState @*/;
+int Stat(const char * path, struct stat * st);
 
 /**
  * lstat(2) clone.
  */
-int Lstat(const char * path, /*@out@*/ struct stat * st)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies *st, errno, fileSystem, internalState @*/;
+int Lstat(const char * path, struct stat * st);
 
 /**
  * access(2) clone.
  */
-int Access(const char * path, int amode)
-       /*@globals errno, fileSystem @*/
-       /*@modifies errno, fileSystem @*/;
+int Access(const char * path, int amode);
 
 /**
  * glob_pattern_p(3) clone.
  */
-int Glob_pattern_p (const char *pattern, int quote)
-       /*@*/;
+int Glob_pattern_p (const char *pattern, int quote);
 
 /**
  * glob_error(3) clone.
  */
-int Glob_error(const char * epath, int eerrno)
-       /*@*/;
+int Glob_error(const char * epath, int eerrno);
 
 /**
  * glob(3) clone.
  */
 int Glob(const char * pattern, int flags,
                int errfunc(const char * epath, int eerrno),
-               /*@out@*/ glob_t * pglob)
-       /*@globals fileSystem @*/
-       /*@modifies *pglob, fileSystem @*/;
+               glob_t * pglob);
 
 /**
  * globfree(3) clone.
  */
-void Globfree( /*@only@*/ glob_t * pglob)
-       /*@globals fileSystem @*/
-       /*@modifies *pglob, fileSystem @*/;
+void Globfree( glob_t * pglob);
 
 
 /**
  * opendir(3) clone.
  */
-/*@null@*/
-DIR * Opendir(const char * path)
-       /*@globals errno, h_errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+DIR * Opendir(const char * path);
 
 /**
  * readdir(3) clone.
  */
-/*@dependent@*/ /*@null@*/
-struct dirent * Readdir(DIR * dir)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *dir, errno, fileSystem @*/;
+struct dirent * Readdir(DIR * dir);
 
 /**
  * closedir(3) clone.
  */
-int Closedir(/*@only@*/ DIR * dir)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *dir, errno, fileSystem @*/;
+int Closedir(DIR * dir);
 
-/*@}*/
 
 
 /** \ingroup rpmio
  * \name RPMIO Utilities.
  */
-/*@{*/
 
 /**
  */
-off_t  fdSize(FD_t fd)
-       /*@globals fileSystem @*/
-       /*@modifies fd, fileSystem@*/;
+off_t  fdSize(FD_t fd);
 
 /**
  */
-/*@null@*/ FD_t fdDup(int fdno)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+FD_t fdDup(int fdno);
 
 #ifdef UNUSED
-/*@null@*/ FILE *fdFdopen( /*@only@*/ void * cookie, const char * mode);
+FILE *fdFdopen( void * cookie, const char * mode);
 #endif
 
 /* XXX Legacy interfaces needed by gnorpm, rpmfind et al */
 
-/*@-exportlocal@*/
 /**
  */
 #ifndef H_RPMIO_INTERNAL       /* XXX avoid gcc warning */
-/*@unused@*/ int fdFileno(void * cookie)
-       /*@*/;
+int fdFileno(void * cookie);
 #define        fdFileno(_fd)           fdio->_fileno(_fd)
 #endif
 
 /**
  */
-/*@null@*/ FD_t fdOpen(const char *path, int flags, mode_t mode)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies errno, fileSystem, internalState @*/;
+FD_t fdOpen(const char *path, int flags, mode_t mode);
 #define        fdOpen(_path, _flags, _mode)    fdio->_open((_path), (_flags), (_mode))
 
 /**
  */
-/*@-incondefs@*/
-ssize_t fdRead(void * cookie, /*@out@*/ char * buf, size_t count)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies *cookie, *buf, errno, fileSystem, internalState @*/
-       /*@requires maxSet(buf) >= (count - 1) @*/
-       /*@ensures maxRead(buf) == result @*/ ;
+ssize_t fdRead(void * cookie, char * buf, size_t count);
 #define        fdRead(_fd, _buf, _count)       fdio->read((_fd), (_buf), (_count))
-/*@=incondefs@*/
 
 /**
  */
-ssize_t        fdWrite(void * cookie, const char * buf, size_t count)
-       /*@globals errno, fileSystem, internalState @*/
-       /*@modifies *cookie, errno, fileSystem, internalState @*/;
+ssize_t        fdWrite(void * cookie, const char * buf, size_t count);
 #define        fdWrite(_fd, _buf, _count)      fdio->write((_fd), (_buf), (_count))
 
 /**
  */
-int fdClose( /*@only@*/ void * cookie)
-       /*@globals errno, fileSystem, systemState, internalState @*/
-       /*@modifies *cookie, errno, fileSystem, systemState, internalState @*/;
+int fdClose( void * cookie);
 #define        fdClose(_fd)            fdio->close(_fd)
 
 /**
  */
-/*@unused@*/
-/*@only@*/ /*@null@*/
-FD_t fdLink (/*@only@*/ void * cookie, const char * msg)
-       /*@globals fileSystem @*/
-       /*@modifies *cookie, fileSystem @*/;
+FD_t fdLink (void * cookie, const char * msg);
 #define        fdLink(_fd, _msg)       fdio->_fdref(_fd, _msg, __FILE__, __LINE__)
 
 /**
  */
-/*@unused@*/
-/*@only@*/ /*@null@*/
-FD_t fdFree(/*@only@*/ FD_t fd, const char * msg)
-       /*@globals fileSystem @*/
-       /*@modifies fd, fileSystem @*/;
+FD_t fdFree(FD_t fd, const char * msg);
 #define        fdFree(_fd, _msg)       fdio->_fdderef(_fd, _msg, __FILE__, __LINE__)
 
 /**
  */
-/*@unused@*/
-/*@only@*/ /*@null@*/
-FD_t fdNew (const char * msg)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+FD_t fdNew (const char * msg);
 #define        fdNew(_msg)             fdio->_fdnew(_msg, __FILE__, __LINE__)
 
 /**
  */
-int fdWritable(FD_t fd, int secs)
-       /*@globals errno, fileSystem @*/
-       /*@modifies fd, errno, fileSystem @*/;
+int fdWritable(FD_t fd, int secs);
 
 /**
  */
-int fdReadable(FD_t fd, int secs)
-       /*@globals errno @*/
-       /*@modifies fd, errno @*/;
-/*@=exportlocal@*/
+int fdReadable(FD_t fd, int secs);
 
 /**
  * Insure that directories in path exist, creating as needed.
@@ -562,14 +404,11 @@ int fdReadable(FD_t fd, int secs)
  * @param gid          directory uid (if created), or -1 to skip
  * @return             0 on success, errno (or -1) on error
  */
-int rpmioMkpath(const char * path, mode_t mode, uid_t uid, gid_t gid)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int rpmioMkpath(const char * path, mode_t mode, uid_t uid, gid_t gid);
 
 /**
  * FTP and HTTP error codes.
  */
-/*@-typeuse@*/
 typedef enum ftperrCode_e {
     FTPERR_NE_ERROR            = -1,   /*!< Generic error. */
     FTPERR_NE_LOOKUP           = -2,   /*!< Hostname lookup failed. */
@@ -594,116 +433,94 @@ typedef enum ftperrCode_e {
     FTPERR_NIC_ABORT_IN_PROGRESS= -91, /*!< Abort in progress */
     FTPERR_UNKNOWN             = -100  /*!< Unknown or unexpected error */
 } ftperrCode;
-/*@=typeuse@*/
 
 /**
  */
-/*@-redecl@*/
-/*@observer@*/ const char * ftpStrerror(int errorNumber)
-       /*@*/;
-/*@=redecl@*/
+const char * ftpStrerror(int errorNumber);
 
 /**
  */
-/*@unused@*/
-/*@dependent@*/ /*@null@*/ void * ufdGetUrlinfo(FD_t fd)
-       /*@modifies fd @*/;
+void * ufdGetUrlinfo(FD_t fd);
 
 /**
  */
-/*@-redecl@*/
-/*@unused@*/
-/*@observer@*/ const char * urlStrerror(const char * url)
-       /*@globals h_errno, internalState @*/
-       /*@modifies internalState @*/;
-/*@=redecl@*/
+const char * urlStrerror(const char * url);
 
 /**
  */
-/*@-exportlocal@*/
-int ufdCopy(FD_t sfd, FD_t tfd)
-       /*@globals fileSystem @*/
-       /*@modifies sfd, tfd, fileSystem @*/;
-/*@=exportlocal@*/
+int ufdCopy(FD_t sfd, FD_t tfd);
 
 /**
  */
-int ufdGetFile( /*@killref@*/ FD_t sfd, FD_t tfd)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies sfd, tfd, fileSystem, internalState @*/;
+int ufdGetFile( FD_t sfd, FD_t tfd);
 
 /**
  */
-/*@unused@*/ int timedRead(FD_t fd, /*@out@*/ void * bufptr, int length)
-       /*@globals fileSystem @*/
-       /*@modifies fd, *bufptr, fileSystem @*/;
+int timedRead(FD_t fd, void * bufptr, int length);
 #define        timedRead       (ufdio->read)
 
-/*@-exportlocal@*/
 /**
  */
-/*@observer@*/ /*@unchecked@*/ extern FDIO_t fdio;
+extern FDIO_t fdio;
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ extern FDIO_t fpio;
+extern FDIO_t fpio;
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ extern FDIO_t ufdio;
+extern FDIO_t ufdio;
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ extern FDIO_t gzdio;
+extern FDIO_t gzdio;
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ extern FDIO_t bzdio;
+extern FDIO_t bzdio;
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ extern FDIO_t fadio;
-/*@=exportlocal@*/
-/*@}*/
+extern FDIO_t fadio;
 
-/*@unused@*/ static inline int xislower(int c) /*@*/ {
+static inline int xislower(int c)  {
     return (c >= 'a' && c <= 'z');
 }
-/*@unused@*/ static inline int xisupper(int c) /*@*/ {
+static inline int xisupper(int c)  {
     return (c >= 'A' && c <= 'Z');
 }
-/*@unused@*/ static inline int xisalpha(int c) /*@*/ {
+static inline int xisalpha(int c)  {
     return (xislower(c) || xisupper(c));
 }
-/*@unused@*/ static inline int xisdigit(int c) /*@*/ {
+static inline int xisdigit(int c)  {
     return (c >= '0' && c <= '9');
 }
-/*@unused@*/ static inline int xisalnum(int c) /*@*/ {
+static inline int xisalnum(int c)  {
     return (xisalpha(c) || xisdigit(c));
 }
-/*@unused@*/ static inline int xisblank(int c) /*@*/ {
+static inline int xisblank(int c)  {
     return (c == ' ' || c == '\t');
 }
-/*@unused@*/ static inline int xisspace(int c) /*@*/ {
+static inline int xisspace(int c)  {
     return (xisblank(c) || c == '\n' || c == '\r' || c == '\f' || c == '\v');
 }
 
-/*@unused@*/ static inline int xtolower(int c) /*@*/ {
+static inline int xtolower(int c)  {
     return ((xisupper(c)) ? (c | ('a' - 'A')) : c);
 }
-/*@unused@*/ static inline int xtoupper(int c) /*@*/ {
+static inline int xtoupper(int c)  {
     return ((xislower(c)) ? (c & ~('a' - 'A')) : c);
 }
 
 /** \ingroup rpmio
  * Locale insensitive strcasecmp(3).
  */
-int xstrcasecmp(const char * s1, const char * s2)              /*@*/;
+int xstrcasecmp(const char * s1, const char * s2)              ;
 
 /** \ingroup rpmio
  * Locale insensitive strncasecmp(3).
  */
-int xstrncasecmp(const char *s1, const char * s2, size_t n)    /*@*/;
+int xstrncasecmp(const char *s1, const char * s2, size_t n)    ;
 
 #ifdef __cplusplus
 }
index cc67329..2c4befe 100644 (file)
@@ -38,9 +38,7 @@
  * Values parsed from OpenPGP signature/pubkey packet(s).
  */
 struct pgpDigParams_s {
-/*@only@*/ /*@null@*/
     const char * userid;
-/*@only@*/ /*@null@*/
     const byte * hash;
     const char * params[4];
     byte tag;
@@ -69,19 +67,13 @@ struct pgpDig_s {
 
     size_t nbytes;             /*!< No. bytes of plain text. */
 
-/*@only@*/ /*@null@*/
     DIGEST_CTX sha1ctx;                /*!< (dsa) sha1 hash context. */
-/*@only@*/ /*@null@*/
     DIGEST_CTX hdrsha1ctx;     /*!< (dsa) header sha1 hash context. */
-/*@only@*/ /*@null@*/
     void * sha1;               /*!< (dsa) V3 signature hash. */
     size_t sha1len;            /*!< (dsa) V3 signature hash length. */
 
-/*@only@*/ /*@null@*/
     DIGEST_CTX md5ctx;         /*!< (rsa) md5 hash context. */
-/*@only@*/ /*@null@*/
     DIGEST_CTX hdrmd5ctx;      /*!< (rsa) header md5 hash context. */
-/*@only@*/ /*@null@*/
     void * md5;                        /*!< (rsa) V3 signature hash. */
     size_t md5len;             /*!< (rsa) V3 signature hash length. */
 
@@ -104,9 +96,7 @@ struct pgpDig_s {
 /** \ingroup rpmio
  */
 typedef struct _FDSTACK_s {
-/*@exposed@*/
     FDIO_t             io;
-/*@dependent@*/
     void *             fp;
     int                        fdno;
 } FDSTACK_t;
@@ -126,7 +116,7 @@ typedef enum fdOpX_e {
 /** \ingroup rpmio
  * Cumulative statistics for a descriptor.
  */
-typedef        /*@abstract@*/ struct {
+typedef        struct {
     struct rpmop_s     ops[FDSTAT_MAX];        /*!< Cumulative statistics. */
 } * FDSTAT_t;
 
@@ -141,7 +131,6 @@ typedef struct _FDDIGEST_s {
  * The FD_t File Handle data structure.
  */
 struct _FD_s {
-/*@refs@*/
     int                nrefs;
     int                flags;
 #define        RPMIO_DEBUG_IO          0x40000000
@@ -152,9 +141,7 @@ struct _FD_s {
     FDSTACK_t  fps[8];
     int                urlType;        /* ufdio: */
 
-/*@dependent@*/
     void *     url;            /* ufdio: URL info */
-/*@relnull@*/
     void *     req;            /* ufdio: HTTP request */
 
     int                rd_timeoutsecs; /* ufdRead: per FD_t timer */
@@ -164,7 +151,6 @@ struct _FD_s {
     int                wr_chunked;     /* ufdio: */
 
     int                syserrno;       /* last system errno encountered */
-/*@observer@*/
     const void *errcookie;     /* gzdio/bzdio/ufdio: */
 
     FDSTAT_t   stats;          /* I/O statistics */
@@ -178,34 +164,20 @@ struct _FD_s {
     long int   fileSize;       /* fadio: */
     long int   fd_cpioPos;     /* cpio: */
 };
-/*@access FD_t@*/
 
 #define        FDSANE(fd)      assert(fd && fd->magic == FDMAGIC)
 
-/*@-redecl@*/
-/*@unchecked@*/
 extern int _rpmio_debug;
-/*@=redecl@*/
 
-/*@-redecl@*/
-/*@unchecked@*/
 extern int _av_debug;
-/*@=redecl@*/
 
-/*@-redecl@*/
-/*@unchecked@*/
 extern int _ftp_debug;
-/*@=redecl@*/
 
-/*@-redecl@*/
-/*@unchecked@*/
 extern int _dav_debug;
-/*@=redecl@*/
 
 #define DBG(_f, _m, _x) \
-    /*@-modfilesys@*/ \
+    \
     if ((_rpmio_debug | ((_f) ? ((FD_t)(_f))->flags : 0)) & (_m)) fprintf _x \
-    /*@=modfilesys@*/
 
 #define DBGIO(_f, _x)   DBG((_f), RPMIO_DEBUG_IO, _x)
 #define DBGREFS(_f, _x) DBG((_f), RPMIO_DEBUG_REFS, _x)
@@ -216,134 +188,94 @@ extern "C" {
 
 /** \ingroup rpmio
  */
-int fdFgets(FD_t fd, char * buf, size_t len)
-       /*@globals errno, fileSystem @*/
-       /*@modifies *buf, fd, errno, fileSystem @*/;
+int fdFgets(FD_t fd, char * buf, size_t len);
 
 /** \ingroup rpmio
  */
-/*@null@*/ FD_t ftpOpen(const char *url, /*@unused@*/ int flags,
-                /*@unused@*/ mode_t mode, /*@out@*/ urlinfo *uret)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies *uret, fileSystem, internalState @*/;
+FD_t ftpOpen(const char *url, int flags,
+                mode_t mode, urlinfo *uret);
 
 /** \ingroup rpmio
  */
-int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies data, fileSystem, internalState @*/;
+int ftpReq(FD_t data, const char * ftpCmd, const char * ftpArg);
 
 /** \ingroup rpmio
  */
-int ftpCmd(const char * cmd, const char * url, const char * arg2)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int ftpCmd(const char * cmd, const char * url, const char * arg2);
 
 /** \ingroup rpmio
  */
-int ufdClose( /*@only@*/ void * cookie)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies cookie, fileSystem, internalState @*/;
+int ufdClose( void * cookie);
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-/*@null@*/ FDIO_t fdGetIo(FD_t fd)
-       /*@*/
+static inline
+FDIO_t fdGetIo(FD_t fd)
 {
     FDSANE(fd);
-/*@-boundsread@*/
     return fd->fps[fd->nfps].io;
-/*@=boundsread@*/
 }
 
 /** \ingroup rpmio
  */
-/*@-nullstate@*/ /* FIX: io may be NULL */
-/*@unused@*/ static inline
-void fdSetIo(FD_t fd, /*@kept@*/ /*@null@*/ FDIO_t io)
-       /*@modifies fd @*/
+/* FIX: io may be NULL */
+static inline
+void fdSetIo(FD_t fd, FDIO_t io)
 {
     FDSANE(fd);
-/*@-boundswrite@*/
-    /*@-assignexpose@*/
     fd->fps[fd->nfps].io = io;
-    /*@=assignexpose@*/
-/*@=boundswrite@*/
 }
-/*@=nullstate@*/
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-/*@exposed@*/ /*@dependent@*/ /*@null@*/ FILE * fdGetFILE(FD_t fd)
-       /*@*/
+static inline
+FILE * fdGetFILE(FD_t fd)
 {
     FDSANE(fd);
-/*@-boundsread@*/
-    /*@+voidabstract@*/
     return ((FILE *)fd->fps[fd->nfps].fp);
-    /*@=voidabstract@*/
-/*@=boundsread@*/
 }
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-/*@exposed@*/ /*@dependent@*/ /*@null@*/ void * fdGetFp(FD_t fd)
-       /*@*/
+static inline
+void * fdGetFp(FD_t fd)
 {
     FDSANE(fd);
-/*@-boundsread@*/
     return fd->fps[fd->nfps].fp;
-/*@=boundsread@*/
 }
 
 /** \ingroup rpmio
  */
-/*@-nullstate@*/ /* FIX: fp may be NULL */
-/*@unused@*/ static inline
-void fdSetFp(FD_t fd, /*@kept@*/ /*@null@*/ void * fp)
-       /*@modifies fd @*/
+/* FIX: fp may be NULL */
+static inline
+void fdSetFp(FD_t fd, void * fp)
 {
     FDSANE(fd);
-/*@-boundswrite@*/
-    /*@-assignexpose@*/
     fd->fps[fd->nfps].fp = fp;
-    /*@=assignexpose@*/
-/*@=boundswrite@*/
 }
-/*@=nullstate@*/
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 int fdGetFdno(FD_t fd)
-       /*@*/
 {
     FDSANE(fd);
-/*@-boundsread@*/
     return fd->fps[fd->nfps].fdno;
-/*@=boundsread@*/
 }
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 void fdSetFdno(FD_t fd, int fdno)
-       /*@modifies fd @*/
 {
     FDSANE(fd);
-/*@-boundswrite@*/
     fd->fps[fd->nfps].fdno = fdno;
-/*@=boundswrite@*/
 }
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 void fdSetContentLength(FD_t fd, ssize_t contentLength)
-       /*@modifies fd @*/
 {
     FDSANE(fd);
     fd->contentLength = fd->bytesRemain = contentLength;
@@ -351,9 +283,8 @@ void fdSetContentLength(FD_t fd, ssize_t contentLength)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 void fdPush(FD_t fd, FDIO_t io, void * fp, int fdno)
-       /*@modifies fd @*/
 {
     FDSANE(fd);
     if (fd->nfps >= (sizeof(fd->fps)/sizeof(fd->fps[0]) - 1))
@@ -366,9 +297,8 @@ void fdPush(FD_t fd, FDIO_t io, void * fp, int fdno)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 void fdPop(FD_t fd)
-       /*@modifies fd @*/
 {
     FDSANE(fd);
     if (fd->nfps < 0) return;
@@ -380,25 +310,20 @@ void fdPop(FD_t fd)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline /*@null@*/
-rpmop fdstat_op(/*@null@*/ FD_t fd, fdOpX opx)
-       /*@*/
+static inline
+rpmop fdstat_op(FD_t fd, fdOpX opx)
 {
     rpmop op = NULL;
 
-/*@-boundsread@*/
     if (fd != NULL && fd->stats != NULL && opx >= 0 && opx < FDSTAT_MAX)
         op = fd->stats->ops + opx;
-/*@=boundsread@*/
     return op;
 }
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-void fdstat_enter(/*@null@*/ FD_t fd, int opx)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/
+static inline
+void fdstat_enter(FD_t fd, int opx)
 {
     if (fd == NULL) return;
     if (fd->stats != NULL)
@@ -407,10 +332,8 @@ void fdstat_enter(/*@null@*/ FD_t fd, int opx)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-void fdstat_exit(/*@null@*/ FD_t fd, int opx, ssize_t rc)
-       /*@globals internalState @*/
-       /*@modifies fd, internalState @*/
+static inline
+void fdstat_exit(FD_t fd, int opx, ssize_t rc)
 {
     if (fd == NULL) return;
     if (rc == -1)
@@ -430,11 +353,8 @@ void fdstat_exit(/*@null@*/ FD_t fd, int opx, ssize_t rc)
 
 /** \ingroup rpmio
  */
-/*@-boundsread@*/
-/*@unused@*/ static inline
-void fdstat_print(/*@null@*/ FD_t fd, const char * msg, FILE * fp)
-       /*@globals fileSystem @*/
-       /*@modifies *fp, fileSystem @*/
+static inline
+void fdstat_print(FD_t fd, const char * msg, FILE * fp)
 {
     static int usec_scale = (1000*1000);
     int opx;
@@ -449,40 +369,35 @@ void fdstat_print(/*@null@*/ FD_t fd, const char * msg, FILE * fp)
            fprintf(fp, "%8d reads, %8ld total bytes in %d.%06d secs\n",
                op->count, (long)op->bytes,
                (int)(op->usecs/usec_scale), (int)(op->usecs%usec_scale));
-           /*@switchbreak@*/ break;
+           break;
        case FDSTAT_WRITE:
            if (msg) fprintf(fp, "%s:", msg);
            fprintf(fp, "%8d writes, %8ld total bytes in %d.%06d secs\n",
                op->count, (long)op->bytes,
                (int)(op->usecs/usec_scale), (int)(op->usecs%usec_scale));
-           /*@switchbreak@*/ break;
+           break;
        case FDSTAT_SEEK:
-           /*@switchbreak@*/ break;
+           break;
        case FDSTAT_CLOSE:
-           /*@switchbreak@*/ break;
+           break;
        }
     }
 }
-/*@=boundsread@*/
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-void fdSetSyserrno(FD_t fd, int syserrno, /*@kept@*/ const void * errcookie)
-       /*@modifies fd @*/
+static inline
+void fdSetSyserrno(FD_t fd, int syserrno, const void * errcookie)
 {
     FDSANE(fd);
     fd->syserrno = syserrno;
-    /*@-assignexpose@*/
     fd->errcookie = errcookie;
-    /*@=assignexpose@*/
 }
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 int fdGetRdTimeoutSecs(FD_t fd)
-       /*@*/
 {
     FDSANE(fd);
     return fd->rd_timeoutsecs;
@@ -490,9 +405,8 @@ int fdGetRdTimeoutSecs(FD_t fd)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 long int fdGetCpioPos(FD_t fd)
-       /*@*/
 {
     FDSANE(fd);
     return fd->fd_cpioPos;
@@ -500,9 +414,8 @@ long int fdGetCpioPos(FD_t fd)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 void fdSetCpioPos(FD_t fd, long int cpioPos)
-       /*@modifies fd @*/
 {
     FDSANE(fd);
     fd->fd_cpioPos = cpioPos;
@@ -510,24 +423,19 @@ void fdSetCpioPos(FD_t fd, long int cpioPos)
 
 /** \ingroup rpmio
  */
-/*@mayexit@*/ /*@unused@*/ static inline
-FD_t c2f(/*@null@*/ void * cookie)
-       /*@*/
+static inline
+FD_t c2f(void * cookie)
 {
-    /*@-castexpose@*/
     FD_t fd = (FD_t) cookie;
-    /*@=castexpose@*/
     FDSANE(fd);
-    /*@-refcounttrans -retalias@*/ return fd; /*@=refcounttrans =retalias@*/
+    return fd;
 }
 
 /** \ingroup rpmio
  * Attach digest to fd.
  */
-/*@unused@*/ static inline
+static inline
 void fdInitDigest(FD_t fd, pgpHashAlgo hashalgo, int flags)
-       /*@globals internalState @*/
-       /*@modifies fd, internalState @*/
 {
     FDDIGEST_t fddig = fd->digests + fd->ndigests;
     if (fddig != (fd->digests + FDDIGEST_MAX)) {
@@ -542,10 +450,8 @@ void fdInitDigest(FD_t fd, pgpHashAlgo hashalgo, int flags)
 /** \ingroup rpmio
  * Update digest(s) attached to fd.
  */
-/*@unused@*/ static inline
+static inline
 void fdUpdateDigests(FD_t fd, const unsigned char * buf, ssize_t buflen)
-       /*@globals internalState @*/
-       /*@modifies fd, internalState @*/
 {
     int i;
 
@@ -562,13 +468,11 @@ void fdUpdateDigests(FD_t fd, const unsigned char * buf, ssize_t buflen)
 
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
+static inline
 void fdFiniDigest(FD_t fd, pgpHashAlgo hashalgo,
-               /*@null@*/ /*@out@*/ void ** datap,
-               /*@null@*/ /*@out@*/ size_t * lenp,
+               void ** datap,
+               size_t * lenp,
                int asAscii)
-       /*@globals internalState @*/
-       /*@modifies fd, *datap, *lenp, internalState @*/
 {
     int imax = -1;
     int i;
@@ -586,33 +490,26 @@ void fdFiniDigest(FD_t fd, pgpHashAlgo hashalgo,
        fddig->hashctx = NULL;
        break;
     }
-/*@-boundswrite@*/
     if (i < 0) {
        if (datap) *datap = NULL;
        if (lenp) *lenp = 0;
     }
-/*@=boundswrite@*/
 
     fd->ndigests = imax;
     if (i < imax)
        fd->ndigests++;         /* convert index to count */
 }
 
-/*@-shadow@*/
 /** \ingroup rpmio
  */
-/*@unused@*/ static inline
-int fdFileno(/*@null@*/ void * cookie)
-       /*@*/
+static inline
+int fdFileno(void * cookie)
 {
     FD_t fd;
     if (cookie == NULL) return -2;
     fd = c2f(cookie);
-/*@-boundsread@*/
     return fd->fps[0].fdno;
-/*@=boundsread@*/
 }
-/*@=shadow@*/
 
 /**
  * Read an entire file into a buffer.
@@ -622,9 +519,7 @@ int fdFileno(/*@null@*/ void * cookie)
  * @return             0 on success
  */
 int rpmioSlurp(const char * fn,
-                /*@out@*/ byte ** bp, /*@out@*/ ssize_t * blenp)
-        /*@globals h_errno, fileSystem, internalState @*/
-        /*@modifies *bp, *blenp, fileSystem, internalState @*/;
+                byte ** bp, ssize_t * blenp);
 
 #ifdef __cplusplus
 }
index 2d8b0f2..0a8d9fd 100644 (file)
@@ -1,4 +1,3 @@
-/*@-boundsread@*/
 /** \ingroup rpmio
  * \file rpmio/rpmlog.c
  */
 # endif
 #endif
 
-/*@access rpmlogRec @*/
 
-/*@unchecked@*/
 static int nrecs = 0;
-/*@unchecked@*/
-static /*@only@*/ /*@null@*/ rpmlogRec recs = NULL;
+static rpmlogRec recs = NULL;
 
 /**
  * Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
  * @param p            memory to free
  * @retval             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p) /*@modifies p@*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
@@ -59,7 +55,6 @@ const char * rpmlogMessage(void)
     return _("(no error)");
 }
 
-/*@-modfilesys@*/
 void rpmlogPrint(FILE *f)
 {
     int i;
@@ -74,11 +69,8 @@ void rpmlogPrint(FILE *f)
            fprintf(f, "    %s", rec->message);
     }
 }
-/*@=modfilesys@*/
 
 void rpmlogClose (void)
-       /*@globals recs, nrecs @*/
-       /*@modifies recs, nrecs @*/
 {
     int i;
 
@@ -91,22 +83,18 @@ void rpmlogClose (void)
     nrecs = 0;
 }
 
-void rpmlogOpen (/*@unused@*/ const char *ident, /*@unused@*/ int option,
-               /*@unused@*/ int facility)
+void rpmlogOpen (const char *ident, int option,
+               int facility)
 {
 }
 
-/*@unchecked@*/
 static unsigned rpmlogMask = RPMLOG_UPTO( RPMLOG_NOTICE );
 
 #ifdef NOTYET
-/*@unchecked@*/
-static /*@unused@*/ unsigned rpmlogFacility = RPMLOG_USER;
+static unsigned rpmlogFacility = RPMLOG_USER;
 #endif
 
 int rpmlogSetMask (int mask)
-       /*@globals rpmlogMask @*/
-       /*@modifies rpmlogMask @*/
 {
     int omask = rpmlogMask;
     if (mask)
@@ -114,24 +102,18 @@ int rpmlogSetMask (int mask)
     return omask;
 }
 
-/*@unchecked@*/
-static /*@null@*/ rpmlogCallback _rpmlogCallback = NULL;
+static rpmlogCallback _rpmlogCallback = NULL;
 
 rpmlogCallback rpmlogSetCallback(rpmlogCallback cb)
-       /*@globals _rpmlogCallback @*/
-       /*@modifies _rpmlogCallback @*/
 {
     rpmlogCallback ocb = _rpmlogCallback;
     _rpmlogCallback = cb;
     return ocb;
 }
 
-/*@unchecked@*/ /*@null@*/
 static FILE * _stdlog = NULL;
 
 FILE * rpmlogSetFile(FILE * fp)
-       /*@globals _stdlog @*/
-       /*@modifies _stdlog @*/
 {
     FILE * ofp = _stdlog;
     _stdlog = fp;
@@ -139,7 +121,6 @@ FILE * rpmlogSetFile(FILE * fp)
 }
 
 /*@-readonlytrans@*/   /* FIX: double indirection. */
-/*@observer@*/ /*@unchecked@*/
 static char *rpmlogMsgPrefix[] = {
     N_("fatal error: "),/*!< RPMLOG_EMERG */
     N_("fatal error: "),/*!< RPMLOG_ALERT */
@@ -150,27 +131,23 @@ static char *rpmlogMsgPrefix[] = {
     "",                        /*!< RPMLOG_INFO */
     "D: ",             /*!< RPMLOG_DEBUG */
 };
-/*@=readonlytrans@*/
 
 #if !defined(HAVE_VSNPRINTF)
-static inline int vsnprintf(char * buf, /*@unused@*/ int nb,
+static inline int vsnprintf(char * buf, int nb,
        const char * fmt, va_list ap)
 {
     return vsprintf(buf, fmt, ap);
 }
 #endif
 
-/*@-modfilesys@*/
-/*@-compmempass@*/ /* FIX: rpmlogMsgPrefix[] dependent, not unqualified */
-/*@-nullstate@*/ /* FIX: rpmlogMsgPrefix[] may be NULL */
+/* FIX: rpmlogMsgPrefix[] dependent, not unqualified */
+/* FIX: rpmlogMsgPrefix[] may be NULL */
 static void vrpmlog (unsigned code, const char *fmt, va_list ap)
-       /*@globals nrecs, recs, internalState @*/
-       /*@modifies nrecs, recs, internalState @*/
 {
     unsigned pri = RPMLOG_PRI(code);
     unsigned mask = RPMLOG_MASK(pri);
 #ifdef NOTYET
-    /*@unused@*/ unsigned fac = RPMLOG_FAC(code);
+    unsigned fac = RPMLOG_FAC(code);
 #endif
     char *msgbuf, *msg;
     int msgnb = BUFSIZ, nb;
@@ -179,14 +156,13 @@ static void vrpmlog (unsigned code, const char *fmt, va_list ap)
     if ((mask & rpmlogMask) == 0)
        return;
 
-/*@-boundswrite@*/
     msgbuf = xmalloc(msgnb);
     *msgbuf = '\0';
 
     /* Allocate a sufficently large buffer for output. */
     while (1) {
        va_list apc;
-       /*@-sysunrecog -usedef@*/ va_copy(apc, ap); /*@=sysunrecog =usedef@*/
+       va_copy(apc, ap);
        nb = vsnprintf(msgbuf, msgnb, fmt, apc);
        if (nb > -1 && nb < msgnb)
            break;
@@ -195,15 +171,12 @@ static void vrpmlog (unsigned code, const char *fmt, va_list ap)
        else                    /* glibc 2.0 */
            msgnb *= 2;
        msgbuf = xrealloc(msgbuf, msgnb);
-/*@-mods@*/
        va_end(apc);
-/*@=mods@*/
     }
     msgbuf[msgnb - 1] = '\0';
     msg = msgbuf;
 
     /* Save copy of all messages at warning (or below == "more important"). */
-    /*@-branchstate@*/
     if (pri <= RPMLOG_WARNING) {
 
        if (recs == NULL)
@@ -218,14 +191,11 @@ static void vrpmlog (unsigned code, const char *fmt, va_list ap)
        ++nrecs;
 
        if (_rpmlogCallback) {
-           /*@-noeffectuncon@*/ /* FIX: useless callback */
+           /* FIX: useless callback */
            _rpmlogCallback();
-           /*@=noeffectuncon@*/
            return;     /* XXX Preserve legacy rpmError behavior. */
        }
     }
-    /*@=branchstate@*/
-/*@=boundswrite@*/
 
     /* rpmMessage behavior */
 
@@ -253,17 +223,14 @@ static void vrpmlog (unsigned code, const char *fmt, va_list ap)
     if (pri <= RPMLOG_CRIT)
        exit(EXIT_FAILURE);
 }
-/*@=compmempass =nullstate@*/
-/*@=modfilesys@*/
 
 void rpmlog (int code, const char *fmt, ...)
 {
     va_list ap;
 
     va_start(ap, fmt);
-    /*@-internalglobs@*/ /* FIX: shrug */
+    /* FIX: shrug */
     vrpmlog(code, fmt, ap);
-    /*@=internalglobs@*/
     va_end(ap);
 }
 
@@ -281,4 +248,3 @@ rpmlogCallback rpmErrorSetCallback(rpmlogCallback cb)
 {
     return rpmlogSetCallback(cb);
 }
-/*@=boundsread@*/
index d9d01a4..624a7e7 100644 (file)
@@ -19,7 +19,6 @@
  *
  * priorities (these are ordered)
  */
-/*@-typeuse@*/
 typedef enum rpmlogLvl_e {
     RPMLOG_EMERG       = 0,    /*!< system is unusable */
     RPMLOG_ALERT       = 1,    /*!< action must be taken immediately */
@@ -30,7 +29,6 @@ typedef enum rpmlogLvl_e {
     RPMLOG_INFO                = 6,    /*!< informational */
     RPMLOG_DEBUG       = 7     /*!< debug-level messages */
 } rpmlogLvl;
-/*@=typeuse@*/
 
 #define        RPMLOG_PRIMASK  0x07    /* mask to extract priority part (internal) */
                                /* extract priority */
@@ -67,7 +65,6 @@ RPMCODE rpmprioritynames[] =
 /**
  * facility codes
  */
-/*@-enummemuse -typeuse@*/
 typedef        enum rpmlogFac_e {
     RPMLOG_KERN                = (0<<3),       /*!< kernel messages */
     RPMLOG_USER                = (1<<3),       /*!< random user-level messages */
@@ -95,7 +92,6 @@ typedef       enum rpmlogFac_e {
 #define        RPMLOG_NFACILITIES 24   /*!< current number of facilities */
     RPMLOG_ERRMSG      = (((unsigned)(RPMLOG_NFACILITIES+0))<<3)
 } rpmlogFac;
-/*@=enummemuse =typeuse@*/
 
 #define        RPMLOG_FACMASK  0x03f8  /*!< mask to extract facility part */
 #define        RPMLOG_FAC(p)   (((p) & RPMLOG_FACMASK) >> 3)
@@ -156,9 +152,8 @@ typedef void (*rpmlogCallback) (void);
 
 /**
  */
-typedef /*@abstract@*/ struct rpmlogRec_s {
+typedef struct rpmlogRec_s {
     int                code;
-/*@owned@*/ /*@null@*/
     const char * message;
 } * rpmlogRec;
 
@@ -170,57 +165,43 @@ extern "C" {
  * Return number of rpmError() ressages.
  * @return             number of messages
  */
-int rpmlogGetNrecs(void)       /*@*/;
+int rpmlogGetNrecs(void)       ;
 
 /**
  * Print all rpmError() messages.
  * @param f            file handle (NULL uses stderr)
  */
-void rpmlogPrint(/*@null@*/ FILE *f)
-       /*@modifies *f @*/;
+void rpmlogPrint(FILE *f);
 
 /**
  * Close desriptor used to write to system logger.
  * @todo Implement.
  */
-/*@unused@*/
-void rpmlogClose (void)
-       /*@globals internalState@*/
-       /*@modifies internalState @*/;
+void rpmlogClose (void);
 
 /**
  * Open connection to system logger.
  * @todo Implement.
  */
-/*@unused@*/
-void rpmlogOpen (const char * ident, int option, int facility)
-       /*@globals internalState@*/
-       /*@modifies internalState @*/;
+void rpmlogOpen (const char * ident, int option, int facility);
 
 /**
  * Set the log mask level.
  * @param mask         log mask (0 is no operation)
  * @return             previous log mask
  */
-int rpmlogSetMask (int mask)
-       /*@globals internalState@*/
-       /*@modifies internalState @*/;
+int rpmlogSetMask (int mask);
 
 /**
  * Generate a log message using FMT string and option arguments.
  */
-/*@mayexit@*/ /*@printflike@*/ void rpmlog (int code, const char *fmt, ...)
-       /*@*/;
+void rpmlog (int code, const char *fmt, ...);
 
-/*@-exportlocal@*/
 /**
  * Return text of last rpmError() message.
  * @return             text of last message
  */
-/*@-redecl@*/
-/*@observer@*/ /*@null@*/ const char * rpmlogMessage(void)
-       /*@*/;
-/*@=redecl@*/
+const char * rpmlogMessage(void);
 
 /**
  * Return error code from last rpmError() message.
@@ -229,53 +210,41 @@ int rpmlogSetMask (int mask)
  *     and parsed IMHO.
  * @return             code from last message
  */
-int rpmlogCode(void)
-       /*@*/;
+int rpmlogCode(void);
 
 /**
  * Set rpmlog callback function.
  * @param cb           rpmlog callback function
  * @return             previous rpmlog callback function
  */
-rpmlogCallback rpmlogSetCallback(rpmlogCallback cb)
-       /*@globals internalState@*/
-       /*@modifies internalState @*/;
+rpmlogCallback rpmlogSetCallback(rpmlogCallback cb);
 
 /**
  * Set rpmlog file handle.
  * @param fp           rpmlog file handle (NULL uses stdout/stderr)
  * @return             previous rpmlog file handle
  */
-/*@null@*/
-FILE * rpmlogSetFile(/*@null@*/ FILE * fp)
-       /*@globals internalState@*/
-       /*@modifies internalState @*/;
-/*@=exportlocal@*/
+FILE * rpmlogSetFile(FILE * fp);
 
 /**
  * Set rpmlog callback function.
  * @deprecated gnorpm needs, use rpmlogSetCallback() instead.
  */
-extern rpmlogCallback rpmErrorSetCallback(rpmlogCallback cb)
-       /*@globals internalState@*/
-       /*@modifies internalState @*/;
+extern rpmlogCallback rpmErrorSetCallback(rpmlogCallback cb);
 
 /**
  * Return error code from last rpmError() message.
  * @deprecated Perl-RPM needs, use rpmlogCode() instead.
  * @return             code from last message
  */
-extern int rpmErrorCode(void)
-       /*@*/;
+extern int rpmErrorCode(void);
 
 /**
  * Return text of last rpmError() message.
  * @deprecated gnorpm needs, use rpmlogMessage() instead.
  * @return             text of last message
  */
-/*@-redecl@*/
-/*@observer@*/ /*@null@*/ extern const char * rpmErrorString(void)     /*@*/;
-/*@=redecl@*/
+extern const char * rpmErrorString(void)       ;
 
 #ifdef __cplusplus
 }
index 363216e..342c2cd 100644 (file)
@@ -1,4 +1,3 @@
-/*@-bounds -realcompare -sizeoftype -protoparammatch @*/
 #include "system.h"
 
 #ifdef WITH_LUA
@@ -23,7 +22,7 @@
 #include "debug.h"
 
 #if !defined(HAVE_VSNPRINTF)
-static inline int vsnprintf(char * buf, /*@unused@*/ int nb,
+static inline int vsnprintf(char * buf, int nb,
                            const char * fmt, va_list ap)
 {
     return vsprintf(buf, fmt, ap);
@@ -33,27 +32,22 @@ static inline int vsnprintf(char * buf, /*@unused@*/ int nb,
 #define INITSTATE(_lua, lua) \
     rpmlua lua = _lua ? _lua : \
            (globalLuaState ? globalLuaState : \
-                       /*@-mods@*/ \
+                       \
                        (globalLuaState = rpmluaNew()) \
-                       /*@=mods@*/ \
+                       \
            )
 
-/*@only@*/ /*@unchecked@*/ /*@null@*/
 static rpmlua globalLuaState = NULL;
 
-static int luaopen_rpm(lua_State *L)
-       /*@modifies L @*/;
-static int rpm_print(lua_State *L)
-       /*@globals fileSystem @*/
-       /*@modifies L, fileSystem @*/;
+static int luaopen_rpm(lua_State *L);
+static int rpm_print(lua_State *L);
 
 rpmlua rpmluaNew()
 {
     rpmlua lua = (rpmlua) xcalloc(1, sizeof(*lua));
     lua_State *L = lua_open();
     struct stat st;
-    /*@-readonlytrans@*/
-    /*@observer@*/ /*@unchecked@*/
+   
     static const luaL_reg lualibs[] = {
        {"base", luaopen_base},
        {"table", luaopen_table},
@@ -66,15 +60,12 @@ rpmlua rpmluaNew()
        {"rpm", luaopen_rpm},
        {NULL, NULL},
     };
-    /*@observer@*/ /*@unchecked@*/
+   
     const luaL_reg *lib = lualibs;
-    /*@=readonlytrans@*/
 
     lua->L = L;
     for (; lib->name; lib++) {
-/*@-noeffectuncon@*/
        (void) lib->func(L);
-/*@=noeffectuncon@*/
        lua_settop(L, 0);
     }
     lua_pushliteral(L, "LUA_PATH");
@@ -114,17 +105,14 @@ void rpmluaSetData(rpmlua _lua, const char *key, const void *data)
 }
 
 static void *getdata(lua_State *L, const char *key)
-       /*@modifies L @*/
 {
     void *ret = NULL;
     lua_pushliteral(L, "rpm_");
     lua_pushstring(L, key);
     lua_concat(L, 2);
     lua_rawget(L, LUA_REGISTRYINDEX);
-/*@-branchstate@*/
     if (lua_islightuserdata(L, -1))
        ret = lua_touserdata(L, -1);
-/*@=branchstate@*/
     lua_pop(L, 1);
     return ret;
 }
@@ -151,7 +139,6 @@ const char *rpmluaGetPrintBuffer(rpmlua _lua)
 }
 
 static int pushvar(lua_State *L, rpmluavType type, void *value)
-       /*@modifies L @*/
 {
     int ret = 0;
     switch (type) {
@@ -197,14 +184,11 @@ void rpmluaSetVar(rpmlua _lua, rpmluav var)
 }
 
 static void popvar(lua_State *L, rpmluavType *type, void *value)
-       /*@modifies L, *type, *value @*/
 {
     switch (lua_type(L, -1)) {
     case LUA_TSTRING:
        *type = RPMLUAV_STRING;
-/*@-observertrans -dependenttrans @*/
        *((const char **)value) = lua_tostring(L, -1);
-/*@=observertrans =dependenttrans @*/
        break;
     case LUA_TNUMBER:
        *type = RPMLUAV_NUMBER;
@@ -242,7 +226,6 @@ void rpmluaGetVar(rpmlua _lua, rpmluav var)
 #define FINDKEY_CREATE 1
 #define FINDKEY_REMOVE 2
 static int findkey(lua_State *L, int oper, const char *key, va_list va)
-       /*@modifies L @*/
 {
     char buf[BUFSIZ];
     const char *s, *e;
@@ -260,13 +243,12 @@ static int findkey(lua_State *L, int oper, const char *key, va_list va)
                        lua_pushnil(L);
                        lua_rawset(L, -3);
                        lua_pop(L, 1);
-                       /*@switchbreak@*/ break;
+                       break;
                    }
-                   /*@fallthrough@*/
                case FINDKEY_RETURN:
                    lua_rawget(L, -2);
                    lua_remove(L, -2);
-                   /*@switchbreak@*/ break;
+                   break;
                case FINDKEY_CREATE:
                    lua_rawget(L, -2);
                    if (!lua_istable(L, -1)) {
@@ -277,7 +259,7 @@ static int findkey(lua_State *L, int oper, const char *key, va_list va)
                        lua_rawset(L, -4);
                    }
                    lua_remove(L, -2);
-                   /*@switchbreak@*/ break;
+                   break;
                }
            }
            if (*e == '\0')
@@ -359,7 +341,6 @@ void rpmluavSetListMode(rpmluav var, int flag)
 void rpmluavSetKey(rpmluav var, rpmluavType type, const void *value)
 {
     var->keyType = type;
-/*@-assignexpose -branchstate -temptrans @*/
     switch (type) {
        case RPMLUAV_NUMBER:
            var->key.num = *((double *)value);
@@ -370,13 +351,11 @@ void rpmluavSetKey(rpmluav var, rpmluavType type, const void *value)
        default:
            break;
     }
-/*@=assignexpose =branchstate =temptrans @*/
 }
 
 void rpmluavSetValue(rpmluav var, rpmluavType type, const void *value)
 {
     var->valueType = type;
-/*@-assignexpose -branchstate -temptrans @*/
     switch (type) {
        case RPMLUAV_NUMBER:
            var->value.num = *((const double *)value);
@@ -387,13 +366,11 @@ void rpmluavSetValue(rpmluav var, rpmluavType type, const void *value)
        default:
            break;
     }
-/*@=assignexpose =branchstate =temptrans @*/
 }
 
 void rpmluavGetKey(rpmluav var, rpmluavType *type, void **value)
 {
     *type = var->keyType;
-/*@-onlytrans@*/
     switch (var->keyType) {
        case RPMLUAV_NUMBER:
            *((double **)value) = &var->key.num;
@@ -404,13 +381,11 @@ void rpmluavGetKey(rpmluav var, rpmluavType *type, void **value)
        default:
            break;
     }
-/*@=onlytrans@*/
 }
 
 void rpmluavGetValue(rpmluav var, rpmluavType *type, void **value)
 {
     *type = var->valueType;
-/*@-onlytrans@*/
     switch (var->valueType) {
        case RPMLUAV_NUMBER:
            *((double **)value) = &var->value.num;
@@ -421,7 +396,6 @@ void rpmluavGetValue(rpmluav var, rpmluavType *type, void **value)
        default:
            break;
     }
-/*@=onlytrans@*/
 }
 
 void rpmluavSetKeyNum(rpmluav var, double value)
@@ -469,10 +443,8 @@ int rpmluaCheckScript(rpmlua _lua, const char *script, const char *name)
     INITSTATE(_lua, lua);
     lua_State *L = lua->L;
     int ret = 0;
-/*@-branchstate@*/
     if (name == NULL)
        name = "<lua>";
-/*@=branchstate@*/
     if (luaL_loadbuffer(L, script, strlen(script), name) != 0) {
        rpmError(RPMERR_SCRIPT,
                _("invalid syntax in lua scriptlet: %s\n"),
@@ -488,10 +460,8 @@ int rpmluaRunScript(rpmlua _lua, const char *script, const char *name)
     INITSTATE(_lua, lua);
     lua_State *L = lua->L;
     int ret = 0;
-/*@-branchstate@*/
     if (name == NULL)
        name = "<lua>";
-/*@=branchstate@*/
     if (luaL_loadbuffer(L, script, strlen(script), name) != 0) {
        rpmError(RPMERR_SCRIPT, _("invalid syntax in lua script: %s\n"),
                 lua_tostring(L, -1));
@@ -527,8 +497,6 @@ int rpmluaRunScriptFile(rpmlua _lua, const char *filename)
 
 /* From lua.c */
 static int rpmluaReadline(lua_State *L, const char *prompt)
-       /*@globals fileSystem @*/
-       /*@modifies L, fileSystem @*/
 {
    static char buffer[1024];
    if (prompt) {
@@ -545,8 +513,6 @@ static int rpmluaReadline(lua_State *L, const char *prompt)
 
 /* Based on lua.c */
 static void _rpmluaInteractive(lua_State *L)
-       /*@globals fileSystem @*/
-       /*@modifies L, fileSystem @*/
 {
    (void) fputs("\n", stdout);
    printf("RPM Interactive %s Interpreter\n", LUA_VERSION);
@@ -556,25 +522,21 @@ static void _rpmluaInteractive(lua_State *L)
       if (rpmluaReadline(L, "> ") == 0)
         break;
       if (lua_tostring(L, -1)[0] == '=') {
-/*@-evalorder@*/
         (void) lua_pushfstring(L, "print(%s)", lua_tostring(L, -1)+1);
-/*@=evalorder@*/
         lua_remove(L, -2);
       }
       for (;;) {
-/*@-evalorder@*/
         rc = luaL_loadbuffer(L, lua_tostring(L, -1),
                              lua_strlen(L, -1), "<lua>");
-/*@=evalorder@*/
         if (rc == LUA_ERRSYNTAX &&
             strstr(lua_tostring(L, -1), "near `<eof>'") != NULL) {
            if (rpmluaReadline(L, ">> ") == 0)
-              /*@innerbreak@*/ break;
+              break;
            lua_remove(L, -2); /* Remove error */
            lua_concat(L, 2);
-           /*@innercontinue@*/ continue;
+           continue;
         }
-        /*@innerbreak@*/ break;
+        break;
       }
       if (rc == 0)
         rc = lua_pcall(L, 0, 0, 0);
@@ -587,20 +549,16 @@ static void _rpmluaInteractive(lua_State *L)
    (void) fputs("\n", stdout);
 }
 
-/*@-mods@*/
 void rpmluaInteractive(rpmlua _lua)
 {
     INITSTATE(_lua, lua);
     _rpmluaInteractive(lua->L);
 }
-/*@=mods@*/
 
 /* ------------------------------------------------------------------ */
 /* Lua API */
 
 static int rpm_expand(lua_State *L)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies L, rpmGlobalMacroContext @*/
 {
     const char *str = luaL_checkstring(L, 1);
     lua_pushstring(L, rpmExpand(str, NULL));
@@ -608,8 +566,6 @@ static int rpm_expand(lua_State *L)
 }
 
 static int rpm_define(lua_State *L)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies L, rpmGlobalMacroContext @*/
 {
     const char *str = luaL_checkstring(L, 1);
     (void) rpmDefineMacro(NULL, str, 0);
@@ -617,22 +573,18 @@ static int rpm_define(lua_State *L)
 }
 
 static int rpm_interactive(lua_State *L)
-       /*@globals fileSystem @*/
-       /*@modifies L, fileSystem @*/
 {
     _rpmluaInteractive(L);
     return 0;
 }
 
 typedef struct rpmluaHookData_s {
-/*@shared@*/
     lua_State *L;
     int funcRef;
     int dataRef;
 } * rpmluaHookData;
 
 static int rpmluaHookWrapper(rpmhookArgs args, void *data)
-    /*@*/
 {
     rpmluaHookData hookdata = (rpmluaHookData)data;
     lua_State *L = hookdata->L;
@@ -645,23 +597,23 @@ static int rpmluaHookWrapper(rpmhookArgs args, void *data)
            case 's':
                lua_pushstring(L, args->argv[i].s);
                lua_rawseti(L, -2, i+1);
-               /*@switchbreak@*/ break;
+               break;
            case 'i':
                lua_pushnumber(L, (lua_Number)args->argv[i].i);
                lua_rawseti(L, -2, i+1);
-               /*@switchbreak@*/ break;
+               break;
            case 'f':
                lua_pushnumber(L, (lua_Number)args->argv[i].f);
                lua_rawseti(L, -2, i+1);
-               /*@switchbreak@*/ break;
+               break;
            case 'p':
                lua_pushlightuserdata(L, args->argv[i].p);
                lua_rawseti(L, -2, i+1);
-               /*@switchbreak@*/ break;
+               break;
            default:
                 (void) luaL_error(L, "unsupported type '%c' as "
                               "a hook argument\n", args->argt[i]);
-               /*@switchbreak@*/ break;
+               break;
        }
     }
     if (lua_pcall(L, 1, 1, 0) != 0) {
@@ -677,8 +629,6 @@ static int rpmluaHookWrapper(rpmhookArgs args, void *data)
 }
 
 static int rpm_register(lua_State *L)
-       /*@globals internalState @*/
-       /*@modifies L, internalState @*/
 {
     if (!lua_isstring(L, 1)) {
        (void) luaL_argerror(L, 1, "hook name expected");
@@ -691,9 +641,7 @@ static int rpm_register(lua_State *L)
        hookdata->dataRef = luaL_ref(L, LUA_REGISTRYINDEX);
        lua_pushvalue(L, 2);
        hookdata->funcRef = luaL_ref(L, LUA_REGISTRYINDEX);
-/*@-temptrans@*/
        hookdata->L = L;
-/*@=temptrans@*/
        rpmhookRegister(lua_tostring(L, 1), rpmluaHookWrapper, hookdata);
        return 1;
     }
@@ -701,7 +649,6 @@ static int rpm_register(lua_State *L)
 }
 
 static int rpm_unregister(lua_State *L)
-       /*@modifies L @*/
 {
     if (!lua_isstring(L, 1)) {
        (void) luaL_argerror(L, 1, "hook name expected");
@@ -717,8 +664,6 @@ static int rpm_unregister(lua_State *L)
 }
 
 static int rpm_call(lua_State *L)
-       /*@globals internalState @*/
-       /*@modifies L, internalState @*/
 {
     if (!lua_isstring(L, 1)) {
        (void) luaL_argerror(L, 1, "hook name expected");
@@ -732,10 +677,9 @@ static int rpm_call(lua_State *L)
                case LUA_TNIL:
                    argt[i] = 'p';
                    args->argv[i].p = NULL;
-                   /*@switchbreak@*/ break;
+                   break;
                case LUA_TNUMBER: {
                    float f = (float)lua_tonumber(L, i+1);
-/*@+relaxtypes@*/
                    if (f == (int)f) {
                        argt[i] = 'i';
                        args->argv[i].i = (int)f;
@@ -743,38 +687,33 @@ static int rpm_call(lua_State *L)
                        argt[i] = 'f';
                        args->argv[i].f = f;
                    }
-/*@=relaxtypes@*/
-               }   /*@switchbreak@*/ break;
+               }   break;
                case LUA_TSTRING:
                    argt[i] = 's';
                    args->argv[i].s = lua_tostring(L, i+1);
-                   /*@switchbreak@*/ break;
+                   break;
                case LUA_TUSERDATA:
                case LUA_TLIGHTUSERDATA:
                    argt[i] = 'p';
                    args->argv[i].p = lua_touserdata(L, i+1);
-                   /*@switchbreak@*/ break;
+                   break;
                default:
                    (void) luaL_error(L, "unsupported Lua type passed to hook");
                    argt[i] = 'p';
                    args->argv[i].p = NULL;
-                   /*@switchbreak@*/ break;
+                   break;
            }
        }
-/*@-compdef -kepttrans -usereleased @*/
        args->argt = argt;
        rpmhookCallArgs(name, args);
        free(argt);
        (void) rpmhookArgsFree(args);
-/*@=compdef =kepttrans =usereleased @*/
     }
     return 0;
 }
 
 /* Based on luaB_print. */
 static int rpm_print (lua_State *L)
-       /*@globals fileSystem @*/
-       /*@modifies L, fileSystem @*/
 {
     rpmlua lua = (rpmlua)getdata(L, "lua");
     int n = lua_gettop(L);  /* number of arguments */
@@ -820,8 +759,6 @@ static int rpm_print (lua_State *L)
     return 0;
 }
 
-/*@-readonlytrans@*/
-/*@observer@*/ /*@unchecked@*/
 static const luaL_reg rpmlib[] = {
     {"expand", rpm_expand},
     {"define", rpm_define},
@@ -831,10 +768,8 @@ static const luaL_reg rpmlib[] = {
     {"interactive", rpm_interactive},
     {NULL, NULL}
 };
-/*@=readonlytrans@*/
 
 static int luaopen_rpm(lua_State *L)
-       /*@modifies L @*/
 {
     lua_pushvalue(L, LUA_GLOBALSINDEX);
     luaL_openlib(L, "rpm", rpmlib, 0);
@@ -842,4 +777,3 @@ static int luaopen_rpm(lua_State *L)
 }
 #endif /* WITH_LUA */
 
-/*@=bounds =realcompare =sizeoftype =protoparammatch @*/
index 7f6f376..02d97ab 100644 (file)
@@ -39,107 +39,46 @@ struct rpmluav_s {
 
 #endif /* _RPMLUA_INTERNAL */
 
-typedef /*@abstract@*/ struct rpmlua_s * rpmlua;
-typedef /*@abstract@*/ struct rpmluav_s * rpmluav;
+typedef struct rpmlua_s * rpmlua;
+typedef struct rpmluav_s * rpmluav;
 
-/*@-exportlocal@*/
-/*@only@*/
-rpmlua rpmluaNew(void)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
-/*@=exportlocal@*/
-void *rpmluaFree(/*@only@*/ rpmlua lua)
-       /*@modifies lua @*/;
+rpmlua rpmluaNew(void);
+void *rpmluaFree(rpmlua lua);
 
-int rpmluaCheckScript(/*@null@*/ rpmlua lua, const char *script,
-                     /*@null@*/ const char *name)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-int rpmluaRunScript(/*@null@*/ rpmlua lua, const char *script,
-                   /*@null@*/ const char *name)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-/*@-exportlocal@*/
-int rpmluaRunScriptFile(/*@null@*/ rpmlua lua, const char *filename)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-/*@=exportlocal@*/
-void rpmluaInteractive(/*@null@*/ rpmlua lua)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
+int rpmluaCheckScript(rpmlua lua, const char *script,
+                     const char *name);
+int rpmluaRunScript(rpmlua lua, const char *script,
+                   const char *name);
+int rpmluaRunScriptFile(rpmlua lua, const char *filename);
+void rpmluaInteractive(rpmlua lua);
 
-void *rpmluaGetData(/*@null@*/ rpmlua lua, const char *key)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-/*@-exportlocal@*/
-void rpmluaSetData(/*@null@*/ rpmlua lua, const char *key, const void *data)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-/*@=exportlocal@*/
+void *rpmluaGetData(rpmlua lua, const char *key);
+void rpmluaSetData(rpmlua lua, const char *key, const void *data);
 
-/*@exposed@*/
-const char *rpmluaGetPrintBuffer(/*@null@*/ rpmlua lua)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-void rpmluaSetPrintBuffer(/*@null@*/ rpmlua lua, int flag)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
+const char *rpmluaGetPrintBuffer(rpmlua lua);
+void rpmluaSetPrintBuffer(rpmlua lua, int flag);
 
-void rpmluaGetVar(/*@null@*/ rpmlua lua, rpmluav var)
-       /*@globals fileSystem @*/
-       /*@modifies lua, var, fileSystem @*/;
-void rpmluaSetVar(/*@null@*/ rpmlua lua, rpmluav var)
-       /*@globals fileSystem @*/
-       /*@modifies lua, var, fileSystem @*/;
-void rpmluaDelVar(/*@null@*/ rpmlua lua, const char *key, ...)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-int rpmluaVarExists(/*@null@*/ rpmlua lua, const char *key, ...)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-void rpmluaPushTable(/*@null@*/ rpmlua lua, const char *key, ...)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
-void rpmluaPop(/*@null@*/ rpmlua lua)
-       /*@globals fileSystem @*/
-       /*@modifies lua, fileSystem @*/;
+void rpmluaGetVar(rpmlua lua, rpmluav var);
+void rpmluaSetVar(rpmlua lua, rpmluav var);
+void rpmluaDelVar(rpmlua lua, const char *key, ...);
+int rpmluaVarExists(rpmlua lua, const char *key, ...);
+void rpmluaPushTable(rpmlua lua, const char *key, ...);
+void rpmluaPop(rpmlua lua);
 
-/*@only@*/
-rpmluav rpmluavNew(void)
-       /*@*/;
-void * rpmluavFree(/*@only@*/ rpmluav var)
-       /*@modifes var @*/;
-void rpmluavSetListMode(rpmluav var, int flag)
-       /*@modifies var @*/;
-/*@-exportlocal@*/
-void rpmluavSetKey(rpmluav var, rpmluavType type, const void *value)
-       /*@modifies var @*/;
-/*@=exportlocal@*/
-/*@-exportlocal@*/
-void rpmluavSetValue(rpmluav var, rpmluavType type, const void *value)
-       /*@modifies var @*/;
-/*@=exportlocal@*/
-/*@-exportlocal@*/
-void rpmluavGetKey(rpmluav var, /*@out@*/ rpmluavType *type, /*@out@*/ void **value)
-       /*@modifies *type, *value @*/;
-/*@=exportlocal@*/
-/*@-exportlocal@*/
-void rpmluavGetValue(rpmluav var, /*@out@*/ rpmluavType *type, /*@out@*/ void **value)
-       /*@modifies *type, *value @*/;
-/*@=exportlocal@*/
+rpmluav rpmluavNew(void);
+void * rpmluavFree(rpmluav var);
+void rpmluavSetListMode(rpmluav var, int flag);
+void rpmluavSetKey(rpmluav var, rpmluavType type, const void *value);
+void rpmluavSetValue(rpmluav var, rpmluavType type, const void *value);
+void rpmluavGetKey(rpmluav var, rpmluavType *type, void **value);
+void rpmluavGetValue(rpmluav var, rpmluavType *type, void **value);
 
 /* Optional helpers for numbers. */
-void rpmluavSetKeyNum(rpmluav var, double value)
-       /*@modifies var @*/;
-void rpmluavSetValueNum(rpmluav var, double value)
-       /*@modifies var @*/;
-double rpmluavGetKeyNum(rpmluav var)
-       /*@*/;
-double rpmluavGetValueNum(rpmluav var)
-       /*@*/;
-int rpmluavKeyIsNum(rpmluav var)
-       /*@*/;
-int rpmluavValueIsNum(rpmluav var)
-       /*@*/;
+void rpmluavSetKeyNum(rpmluav var, double value);
+void rpmluavSetValueNum(rpmluav var, double value);
+double rpmluavGetKeyNum(rpmluav var);
+double rpmluavGetValueNum(rpmluav var);
+int rpmluavKeyIsNum(rpmluav var);
+int rpmluavValueIsNum(rpmluav var);
 
 #endif /* RPMLUA_H */
index 737a3d0..d6d8312 100644 (file)
@@ -6,7 +6,7 @@
  */
 
 /*! The structure used to store a macro. */
-typedef /*@abstract@*/ struct MacroEntry_s {
+typedef struct MacroEntry_s {
     struct MacroEntry_s *prev;/*!< Macro entry stack. */
     const char *name;  /*!< Macro name. */
     const char *opts;  /*!< Macro parameters (a la getopt) */
@@ -16,29 +16,22 @@ typedef /*@abstract@*/ struct MacroEntry_s {
 } * MacroEntry;
 
 /*! The structure used to store the set of macros in a context. */
-typedef /*@abstract@*/ struct MacroContext_s {
-/*@owned@*//*@null@*/ MacroEntry *macroTable;  /*!< Macro entry table for context. */
+typedef struct MacroContext_s {
+/*@owned@*/MacroEntry *macroTable;     /*!< Macro entry table for context. */
     int        macrosAllocated;/*!< No. of allocated macros. */
     int        firstFree;      /*!< No. of macros. */
 } * MacroContext;
 
-/*@-redecl@*/
-/*@checked@*/
 extern MacroContext rpmGlobalMacroContext;
 
-/*@checked@*/
 extern MacroContext rpmCLIMacroContext;
-/*@=redecl@*/
 
 /** \ingroup rpmrc
  * List of macro files to read when configuring rpm.
  * This is a colon separated list of files. URI's are permitted as well,
  * identified by the token '://', so file paths must not begin with '//'.
  */
-/*@-redecl@*/
-/*@observer@*/ /*@checked@*/
 extern const char * macrofiles;
-/*@=redecl@*/
 
 /**
  * Markers for sources of macros added throughout rpm.
@@ -62,10 +55,8 @@ extern "C" {
  * @param mc           macro context (NULL uses global context).
  * @param fp           file stream (NULL uses stderr).
  */
-void   rpmDumpMacroTable       (/*@null@*/ MacroContext mc,
-                                       /*@null@*/ FILE * fp)
-       /*@globals rpmGlobalMacroContext, fileSystem @*/
-       /*@modifies *fp, fileSystem @*/;
+void   rpmDumpMacroTable       (MacroContext mc,
+                                       FILE * fp);
 
 /**
  * Return URL path(s) from a (URL prefixed) pattern glob.
@@ -74,10 +65,8 @@ void rpmDumpMacroTable       (/*@null@*/ MacroContext mc,
  * @retval *argvPtr    array of paths (malloc'd contiguous blob)
  * @return             0 on success
  */
-int rpmGlob(const char * patterns, /*@out@*/ int * argcPtr,
-               /*@out@*/ const char *** argvPtr)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies *argcPtr, *argvPtr, fileSystem, internalState @*/;
+int rpmGlob(const char * patterns, int * argcPtr,
+               const char *** argvPtr);
 
 /**
  * Expand macro into buffer.
@@ -89,11 +78,9 @@ int rpmGlob(const char * patterns, /*@out@*/ int * argcPtr,
  * @param slen         size of buffer
  * @return             0 on success
  */
-int    expandMacros    (/*@null@*/ void * spec, /*@null@*/ MacroContext mc,
-                               /*@in@*/ /*@out@*/ char * sbuf,
-                               size_t slen)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem @*/
-       /*@modifies *sbuf, rpmGlobalMacroContext, fileSystem @*/;
+int    expandMacros    (void * spec, MacroContext mc,
+                               char * sbuf,
+                               size_t slen);
 
 /**
  * Add macro to context.
@@ -104,20 +91,16 @@ int        expandMacros    (/*@null@*/ void * spec, /*@null@*/ MacroContext mc,
  * @param b            macro body
  * @param level                macro recursion level (0 is entry API)
  */
-void   addMacro        (/*@null@*/ MacroContext mc, const char * n,
-                               /*@null@*/ const char * o,
-                               /*@null@*/ const char * b, int level)
-       /*@globals rpmGlobalMacroContext @*/
-       /*@modifies mc, rpmGlobalMacroContext @*/;
+void   addMacro        (MacroContext mc, const char * n,
+                               const char * o,
+                               const char * b, int level);
 
 /**
  * Delete macro from context.
  * @param mc           macro context (NULL uses global context).
  * @param n            macro name
  */
-void   delMacro        (/*@null@*/ MacroContext mc, const char * n)
-       /*@globals rpmGlobalMacroContext @*/
-       /*@modifies mc, rpmGlobalMacroContext @*/;
+void   delMacro        (MacroContext mc, const char * n);
 
 /**
  * Define macro in context.
@@ -126,47 +109,41 @@ void      delMacro        (/*@null@*/ MacroContext mc, const char * n)
  * @param level                macro recursion level (0 is entry API)
  * @return             @todo Document.
  */
-int    rpmDefineMacro  (/*@null@*/ MacroContext mc, const char * macro,
-                               int level)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies mc, rpmGlobalMacroContext @*/;
+int    rpmDefineMacro  (MacroContext mc, const char * macro,
+                               int level);
 
 /**
  * Load macros from specific context into global context.
  * @param mc           macro context (NULL does nothing).
  * @param level                macro recursion level (0 is entry API)
  */
-void   rpmLoadMacros   (/*@null@*/ MacroContext mc, int level)
-       /*@globals rpmGlobalMacroContext @*/
-       /*@modifies rpmGlobalMacroContext @*/;
+void   rpmLoadMacros   (MacroContext mc, int level);
 
 /**
  * Load macro context from a macro file.
  * @param mc           (unused)
  * @param fn           macro file name
  */
-int    rpmLoadMacroFile(/*@null@*/ MacroContext mc, const char * fn)
+int    rpmLoadMacroFile(MacroContext mc, const char * fn)
        /*@globals rpmGlobalMacroContext,
                h_errno, fileSystem, internalState @*/
-       /*@modifies mc, rpmGlobalMacroContext, fileSystem, internalState @*/;
+;
 
 /**
  * Initialize macro context from set of macrofile(s).
  * @param mc           macro context
  * @param macrofiles   colon separated list of macro files (NULL does nothing)
  */
-void   rpmInitMacros   (/*@null@*/ MacroContext mc, const char * macrofiles)
+void   rpmInitMacros   (MacroContext mc, const char * macrofiles)
        /*@globals rpmGlobalMacroContext, rpmCLIMacroContext,
                h_errno, fileSystem, internalState @*/
-       /*@modifies mc, rpmGlobalMacroContext, fileSystem, internalState @*/;
+;
 
 /**
  * Destroy macro context.
  * @param mc           macro context (NULL uses global context).
  */
-void   rpmFreeMacros   (/*@null@*/ MacroContext mc)
-       /*@globals rpmGlobalMacroContext @*/
-       /*@modifies mc, rpmGlobalMacroContext @*/;
+void   rpmFreeMacros   (MacroContext mc);
 
 typedef enum rpmCompressedMagic_e {
     COMPRESSED_NOT             = 0,    /*!< not compressed */
@@ -182,38 +159,29 @@ typedef enum rpmCompressedMagic_e {
  * @return             0 on success, 1 on I/O error
  */
 int    isCompressed    (const char * file,
-                               /*@out@*/ rpmCompressedMagic * compressed)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies *compressed, fileSystem, internalState @*/;
+                               rpmCompressedMagic * compressed);
 
 /**
  * Return (malloc'ed) concatenated macro expansion(s).
  * @param arg          macro(s) to expand (NULL terminates list)
  * @return             macro expansion (malloc'ed)
  */
-char * rpmExpand       (/*@null@*/ const char * arg, ...)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies rpmGlobalMacroContext @*/;
+char * rpmExpand       (const char * arg, ...);
 
 /**
  * Canonicalize file path.
  * @param path         path to canonicalize (in-place)
  * @return             canonicalized path (malloc'ed)
  */
-/*@null@*/
-char * rpmCleanPath    (/*@returned@*/ /*@null@*/ char * path)
-       /*@modifies *path @*/;
+char * rpmCleanPath    (char * path);
 
 /**
  * Return (malloc'ed) expanded, canonicalized, file path.
  * @param path         macro(s) to expand (NULL terminates list)
  * @return             canonicalized path (malloc'ed)
  */
-/*@-redecl@*/ /* LCL: shrug */
-const char * rpmGetPath        (/*@null@*/ const char * path, ...)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies rpmGlobalMacroContext @*/;
-/*@=redecl@*/
+/* LCL: shrug */
+const char * rpmGetPath        (const char * path, ...);
 
 /**
  * Merge 3 args into path, any or all of which may be a url.
@@ -225,13 +193,10 @@ const char * rpmGetPath   (/*@null@*/ const char * path, ...)
  * @param urlfile      file URL (often a file, or NULL)
  * @return             expanded, merged, canonicalized path (malloc'ed)
  */
-/*@-redecl@*/ /* LCL: shrug */
-const char * rpmGenPath        (/*@null@*/ const char * urlroot,
-                       /*@null@*/ const char * urlmdir,
-                       /*@null@*/ const char * urlfile)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies rpmGlobalMacroContext @*/;
-/*@=redecl@*/
+/* LCL: shrug */
+const char * rpmGenPath        (const char * urlroot,
+                       const char * urlmdir,
+                       const char * urlfile);
 
 /**
  * Return macro expansion as a numeric value.
@@ -240,9 +205,7 @@ const char * rpmGenPath     (/*@null@*/ const char * urlroot,
  * @param arg          macro to expand
  * @return             numeric value
  */
-int    rpmExpandNumeric (const char * arg)
-       /*@globals rpmGlobalMacroContext, h_errno @*/
-       /*@modifies rpmGlobalMacroContext @*/;
+int    rpmExpandNumeric (const char * arg);
 
 #ifdef __cplusplus
 }
index 362463c..eee4660 100644 (file)
@@ -9,19 +9,16 @@
 #define        EXIT_FAILURE    1
 #endif
 
-/*@-modfilesys@*/
-/*@only@*/ void *vmefail(size_t size)
+void *vmefail(size_t size)
 {
     fprintf(stderr, _("memory alloc (%u bytes) returned NULL.\n"), (unsigned)size);
     exit(EXIT_FAILURE);
-    /*@notreached@*/
     return NULL;
 }
-/*@=modfilesys@*/
 
 #if !(HAVE_MCHECK_H && defined(__GNUC__))
 
-/*@out@*/ /*@only@*/ void * xmalloc (size_t size)
+void * xmalloc (size_t size)
 {
     register void *value;
     if (size == 0) size++;
@@ -31,7 +28,7 @@
     return value;
 }
 
-/*@only@*/ void * xcalloc (size_t nmemb, size_t size)
+void * xcalloc (size_t nmemb, size_t size)
 {
     register void *value;
     if (size == 0) size++;
@@ -42,7 +39,7 @@
     return value;
 }
 
-/*@only@*/ void * xrealloc (/*@only@*/ void *ptr, size_t size)
+void * xrealloc (void *ptr, size_t size)
 {
     register void *value;
     if (size == 0) size++;
@@ -52,7 +49,7 @@
     return value;
 }
 
-/*@only@*/ char * xstrdup (const char *str)
+char * xstrdup (const char *str)
 {
     size_t size = strlen(str) + 1;
     char *newstr = (char *) malloc (size);
index 5bad9a6..6f52e2d 100644 (file)
@@ -31,9 +31,8 @@
 #define        rpmIsDebug()            \
        (rpmlogSetMask(0) >= RPMLOG_MASK( RPMMESS_DEBUG ))
 
-/*@-redef@*/ /* LCL: ??? */
-typedef /*@abstract@*/ const void * fnpyKey;
-/*@=redef@*/
+/* LCL: ??? */
+typedef const void * fnpyKey;
 
 /**
  * Bit(s) to identify progress callbacks.
@@ -68,18 +67,15 @@ extern "C" {
 /**
  */
 typedef void * (*rpmCallbackFunction)
-               (/*@null@*/ const void * h, 
+               (const void * h, 
                const rpmCallbackType what, 
                const unsigned long amount, 
                const unsigned long total,
-               /*@null@*/ fnpyKey key,
-               /*@null@*/ rpmCallbackData data)
-       /*@globals internalState@*/
-       /*@modifies internalState@*/;
+               fnpyKey key,
+               rpmCallbackData data);
 
 /**
  */
-/*@unused@*/
 void urlSetCallback(rpmCallbackFunction notify, rpmCallbackData notifyData,
                int notifyCount);
 
index d5eda4d..353f826 100644 (file)
@@ -1,4 +1,3 @@
-/*@-boundsread@*/
 /** \ingroup rpmio signature
  * \file rpmio/rpmpgp.c
  * Routines to handle RFC-2440 detached signatures.
@@ -8,19 +7,13 @@
 #include "rpmio_internal.h"
 #include "debug.h"
 
-/*@access pgpDig @*/
-/*@access pgpDigParams @*/
 
-/*@unchecked@*/
 static int _debug = 0;
 
-/*@unchecked@*/
 static int _print = 0;
 
-/*@unchecked@*/ /*@null@*/
 static pgpDig _dig = NULL;
 
-/*@unchecked@*/ /*@null@*/
 static pgpDigParams _digp = NULL;
 
 struct pgpValTbl_s pgpSigTypeTbl[] = {
@@ -90,13 +83,10 @@ struct pgpValTbl_s pgpHashTbl[] = {
     { -1,                      "Unknown hash algorithm" },
 };
 
-/*@-exportlocal -exportheadervar@*/
-/*@observer@*/ /*@unchecked@*/
 struct pgpValTbl_s pgpKeyServerPrefsTbl[] = {
     { 0x80,                    "No-modify" },
     { -1,                      "Unknown key server preference" },
 };
-/*@=exportlocal =exportheadervar@*/
 
 struct pgpValTbl_s pgpSubTypeTbl[] = {
     { PGPSUBTYPE_SIG_CREATE_TIME,"signature creation time" },
@@ -188,25 +178,20 @@ struct pgpValTbl_s pgpArmorKeyTbl[] = {
  * @param p            memory to free
  * @return             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
-       /*@modifies p @*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
 }
 
 static void pgpPrtNL(void)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     if (!_print) return;
     fprintf(stderr, "\n");
 }
 
 static void pgpPrtInt(const char *pre, int i)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     if (!_print) return;
     if (pre && *pre)
@@ -215,8 +200,6 @@ static void pgpPrtInt(const char *pre, int i)
 }
 
 static void pgpPrtStr(const char *pre, const char *s)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     if (!_print) return;
     if (pre && *pre)
@@ -225,8 +208,6 @@ static void pgpPrtStr(const char *pre, const char *s)
 }
 
 static void pgpPrtHex(const char *pre, const byte *p, unsigned int plen)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     if (!_print) return;
     if (pre && *pre)
@@ -235,8 +216,6 @@ static void pgpPrtHex(const char *pre, const byte *p, unsigned int plen)
 }
 
 void pgpPrtVal(const char * pre, pgpValTbl vs, byte val)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     if (!_print) return;
     if (pre && *pre)
@@ -246,9 +225,8 @@ void pgpPrtVal(const char * pre, pgpValTbl vs, byte val)
 
 /**
  */
-/*@unused@*/ static /*@observer@*/
+static
 const char * pgpMpiHex(const byte *p)
-        /*@*/
 {
     static char prbuf[2048];
     char *t = prbuf;
@@ -256,14 +234,11 @@ const char * pgpMpiHex(const byte *p)
     return prbuf;
 }
 
-/*@-boundswrite@*/
 /**
  * @return             0 on success
  */
 static int pgpHexSet(const char * pre, int lbits,
-               /*@out@*/ mpnumber * mpn, const byte * p, const byte * pend)
-       /*@globals fileSystem @*/
-       /*@modifies mpn, fileSystem @*/
+               mpnumber * mpn, const byte * p, const byte * pend)
 {
     unsigned int mbits = pgpMpiBits(p);
     unsigned int nbits;
@@ -291,7 +266,6 @@ if (_debug && _print)
 fprintf(stderr, "\t %s ", pre), mpfprintln(stderr, mpn->size, mpn->data);
     return 0;
 }
-/*@=boundswrite@*/
 
 int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
 {
@@ -312,29 +286,26 @@ int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
        case PGPSUBTYPE_PREFER_SYMKEY:  /* preferred symmetric algorithms */
            for (i = 1; i < plen; i++)
                pgpPrtVal(" ", pgpSymkeyTbl, p[i]);
-           /*@switchbreak@*/ break;
+           break;
        case PGPSUBTYPE_PREFER_HASH:    /* preferred hash algorithms */
            for (i = 1; i < plen; i++)
                pgpPrtVal(" ", pgpHashTbl, p[i]);
-           /*@switchbreak@*/ break;
+           break;
        case PGPSUBTYPE_PREFER_COMPRESS:/* preferred compression algorithms */
            for (i = 1; i < plen; i++)
                pgpPrtVal(" ", pgpCompressionTbl, p[i]);
-           /*@switchbreak@*/ break;
+           break;
        case PGPSUBTYPE_KEYSERVER_PREFERS:/* key server preferences */
            for (i = 1; i < plen; i++)
                pgpPrtVal(" ", pgpKeyServerPrefsTbl, p[i]);
-           /*@switchbreak@*/ break;
+           break;
        case PGPSUBTYPE_SIG_CREATE_TIME:
-/*@-mods -mayaliasunique @*/
            if (_digp && !(_digp->saved & PGPDIG_SAVED_TIME) &&
                (sigtype == PGPSIGTYPE_POSITIVE_CERT || sigtype == PGPSIGTYPE_BINARY || sigtype == PGPSIGTYPE_TEXT || sigtype == PGPSIGTYPE_STANDALONE))
            {
                _digp->saved |= PGPDIG_SAVED_TIME;
                memcpy(_digp->time, p+1, sizeof(_digp->time));
            }
-/*@=mods =mayaliasunique @*/
-           /*@fallthrough@*/
        case PGPSUBTYPE_SIG_EXPIRE_TIME:
        case PGPSUBTYPE_KEY_EXPIRE_TIME:
            if ((plen - 1) == 4) {
@@ -343,18 +314,15 @@ int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
                   fprintf(stderr, " %-24.24s(0x%08x)", ctime(&t), (unsigned)t);
            } else
                pgpPrtHex("", p+1, plen-1);
-           /*@switchbreak@*/ break;
+           break;
 
        case PGPSUBTYPE_ISSUER_KEYID:   /* issuer key ID */
-/*@-mods -mayaliasunique @*/
            if (_digp && !(_digp->saved & PGPDIG_SAVED_ID) &&
                (sigtype == PGPSIGTYPE_POSITIVE_CERT || sigtype == PGPSIGTYPE_BINARY || sigtype == PGPSIGTYPE_TEXT || sigtype == PGPSIGTYPE_STANDALONE))
            {
                _digp->saved |= PGPDIG_SAVED_ID;
                memcpy(_digp->signid, p+1, sizeof(_digp->signid));
            }
-/*@=mods =mayaliasunique @*/
-           /*@fallthrough@*/
        case PGPSUBTYPE_EXPORTABLE_CERT:
        case PGPSUBTYPE_TRUST_SIG:
        case PGPSUBTYPE_REGEX:
@@ -383,7 +351,7 @@ int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
        case PGPSUBTYPE_INTERNAL_110:
        default:
            pgpPrtHex("", p+1, plen-1);
-           /*@switchbreak@*/ break;
+           break;
        }
        pgpPrtNL();
        p += plen;
@@ -392,25 +360,19 @@ int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
     return 0;
 }
 
-/*@-varuse =readonlytrans @*/
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpSigRSA[] = {
     " m**d =",
     NULL,
 };
 
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpSigDSA[] = {
     "    r =",
     "    s =",
     NULL,
 };
-/*@=varuse =readonlytrans @*/
 
-static int pgpPrtSigParams(/*@unused@*/ pgpTag tag, byte pubkey_algo, byte sigtype,
+static int pgpPrtSigParams(pgpTag tag, byte pubkey_algo, byte sigtype,
                const byte *p, const byte *h, unsigned int hlen)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
 {
     const byte * pend = h + hlen;
     int i;
@@ -426,9 +388,9 @@ static int pgpPrtSigParams(/*@unused@*/ pgpTag tag, byte pubkey_algo, byte sigty
                    (void) mpnsethex(&_dig->c, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t  m**d = "),  mpfprintln(stderr, _dig->c.size, _dig->c.data);
-                   /*@switchbreak@*/ break;
+                   break;
                default:
-                   /*@switchbreak@*/ break;
+                   break;
                }
            }
            pgpPrtStr("", pgpSigRSA[i]);
@@ -442,13 +404,13 @@ fprintf(stderr, "\t  m**d = "),  mpfprintln(stderr, _dig->c.size, _dig->c.data);
                switch (i) {
                case 0:         /* r */
                    xx = pgpHexSet(pgpSigDSA[i], 160, &_dig->r, p, pend);
-                   /*@switchbreak@*/ break;
+                   break;
                case 1:         /* s */
                    xx = pgpHexSet(pgpSigDSA[i], 160, &_dig->s, p, pend);
-                   /*@switchbreak@*/ break;
+                   break;
                default:
                    xx = 1;
-                   /*@switchbreak@*/ break;
+                   break;
                }
                if (xx) return xx;
            }
@@ -465,8 +427,6 @@ fprintf(stderr, "\t  m**d = "),  mpfprintln(stderr, _dig->c.size, _dig->c.data);
 }
 
 int pgpPrtSig(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals _digp @*/
-       /*@modifies *_digp @*/
 {
     byte version = h[0];
     byte * p;
@@ -571,8 +531,6 @@ fprintf(stderr, " unhash[%u] -- %s\n", plen, pgpHexStr(p, plen));
     return rc;
 }
 
-/*@-varuse =readonlytrans @*/
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpPublicRSA[] = {
     "    n =",
     "    e =",
@@ -580,7 +538,6 @@ static const char * pgpPublicRSA[] = {
 };
 
 #ifdef NOTYET
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpSecretRSA[] = {
     "    d =",
     "    p =",
@@ -590,7 +547,6 @@ static const char * pgpSecretRSA[] = {
 };
 #endif
 
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpPublicDSA[] = {
     "    p =",
     "    q =",
@@ -600,14 +556,12 @@ static const char * pgpPublicDSA[] = {
 };
 
 #ifdef NOTYET
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpSecretDSA[] = {
     "    x =",
     NULL,
 };
 #endif
 
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpPublicELGAMAL[] = {
     "    p =",
     "    g =",
@@ -616,18 +570,14 @@ static const char * pgpPublicELGAMAL[] = {
 };
 
 #ifdef NOTYET
-/*@observer@*/ /*@unchecked@*/
 static const char * pgpSecretELGAMAL[] = {
     "    x =",
     NULL,
 };
 #endif
-/*@=varuse =readonlytrans @*/
 
 static const byte * pgpPrtPubkeyParams(byte pubkey_algo,
-               /*@returned@*/ const byte *p, const byte *h, unsigned int hlen)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+               const byte *p, const byte *h, unsigned int hlen)
 {
     int i;
 
@@ -640,14 +590,14 @@ static const byte * pgpPrtPubkeyParams(byte pubkey_algo,
                    (void) mpbsethex(&_dig->rsa_pk.n, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t     n = "),  mpfprintln(stderr, _dig->rsa_pk.n.size, _dig->rsa_pk.n.modl);
-                   /*@switchbreak@*/ break;
+                   break;
                case 1:         /* e */
                    (void) mpnsethex(&_dig->rsa_pk.e, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t     e = "),  mpfprintln(stderr, _dig->rsa_pk.e.size, _dig->rsa_pk.e.data);
-                   /*@switchbreak@*/ break;
+                   break;
                default:
-                   /*@switchbreak@*/ break;
+                   break;
                }
            }
            pgpPrtStr("", pgpPublicRSA[i]);
@@ -659,24 +609,24 @@ fprintf(stderr, "\t     e = "),  mpfprintln(stderr, _dig->rsa_pk.e.size, _dig->r
                    (void) mpbsethex(&_dig->p, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t     p = "),  mpfprintln(stderr, _dig->p.size, _dig->p.modl);
-                   /*@switchbreak@*/ break;
+                   break;
                case 1:         /* q */
                    (void) mpbsethex(&_dig->q, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t     q = "),  mpfprintln(stderr, _dig->q.size, _dig->q.modl);
-                   /*@switchbreak@*/ break;
+                   break;
                case 2:         /* g */
                    (void) mpnsethex(&_dig->g, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t     g = "),  mpfprintln(stderr, _dig->g.size, _dig->g.data);
-                   /*@switchbreak@*/ break;
+                   break;
                case 3:         /* y */
                    (void) mpnsethex(&_dig->y, pgpMpiHex(p));
 if (_debug && _print)
 fprintf(stderr, "\t     y = "),  mpfprintln(stderr, _dig->y.size, _dig->y.data);
-                   /*@switchbreak@*/ break;
+                   break;
                default:
-                   /*@switchbreak@*/ break;
+                   break;
                }
            }
            pgpPrtStr("", pgpPublicDSA[i]);
@@ -694,10 +644,8 @@ fprintf(stderr, "\t     y = "),  mpfprintln(stderr, _dig->y.size, _dig->y.data);
     return p;
 }
 
-static const byte * pgpPrtSeckeyParams(/*@unused@*/ byte pubkey_algo,
-               /*@returned@*/ const byte *p, const byte *h, unsigned int hlen)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/
+static const byte * pgpPrtSeckeyParams(byte pubkey_algo,
+               const byte *p, const byte *h, unsigned int hlen)
 {
     int i;
 
@@ -712,21 +660,20 @@ static const byte * pgpPrtSeckeyParams(/*@unused@*/ byte pubkey_algo,
        case 0x00:
            pgpPrtVal(" simple ", pgpHashTbl, p[2]);
            p += 2;
-           /*@innerbreak@*/ break;
+           break;
        case 0x01:
            pgpPrtVal(" salted ", pgpHashTbl, p[2]);
            pgpPrtHex("", p+3, 8);
            p += 10;
-           /*@innerbreak@*/ break;
+           break;
        case 0x03:
            pgpPrtVal(" iterated/salted ", pgpHashTbl, p[2]);
-           /*@-shiftnegative -shiftimplementation @*/ /* FIX: unsigned cast */
+           /* FIX: unsigned cast */
            i = (16 + (p[11] & 0xf)) << ((p[11] >> 4) + 6);
-           /*@=shiftnegative =shiftimplementation @*/
            pgpPrtHex("", p+3, 8);
            pgpPrtInt(" iter", i);
            p += 11;
-           /*@innerbreak@*/ break;
+           break;
        }
        break;
     default:
@@ -769,8 +716,6 @@ static const byte * pgpPrtSeckeyParams(/*@unused@*/ byte pubkey_algo,
 }
 
 int pgpPrtKey(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals _digp @*/
-       /*@modifies *_digp @*/
 {
     byte version = *h;
     const byte * p;
@@ -829,10 +774,7 @@ int pgpPrtKey(pgpTag tag, const byte *h, unsigned int hlen)
     return rc;
 }
 
-/*@-boundswrite@*/
 int pgpPrtUserID(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals _digp @*/
-       /*@modifies *_digp @*/
 {
     pgpPrtVal("", pgpTagTbl, tag);
     if (_print)
@@ -845,7 +787,6 @@ int pgpPrtUserID(pgpTag tag, const byte *h, unsigned int hlen)
     }
     return 0;
 }
-/*@=boundswrite@*/
 
 int pgpPrtComment(pgpTag tag, const byte *h, unsigned int hlen)
 {
@@ -873,7 +814,7 @@ int pgpPrtComment(pgpTag tag, const byte *h, unsigned int hlen)
     return 0;
 }
 
-int pgpPubkeyFingerprint(const byte * pkt, /*@unused@*/ unsigned int pktlen,
+int pgpPubkeyFingerprint(const byte * pkt, unsigned int pktlen,
                byte * keyid)
 {
     const byte *s = pkt;
@@ -893,13 +834,11 @@ int pgpPubkeyFingerprint(const byte * pkt, /*@unused@*/ unsigned int pktlen,
        switch (v->pubkey_algo) {
        case PGPPUBKEYALGO_RSA:
            s += (pgpMpiLen(s) - 8);
-/*@-boundswrite@*/
            memmove(keyid, s, 8);
-/*@=boundswrite@*/
            rc = 0;
-           /*@innerbreak@*/ break;
+           break;
        default:        /* TODO: md5 of mpi bodies (i.e. no length) */
-           /*@innerbreak@*/ break;
+           break;
        }
       }        break;
     case 4:
@@ -912,11 +851,11 @@ int pgpPubkeyFingerprint(const byte * pkt, /*@unused@*/ unsigned int pktlen,
        case PGPPUBKEYALGO_RSA:
            for (i = 0; i < 2; i++)
                s += pgpMpiLen(s);
-           /*@innerbreak@*/ break;
+           break;
        case PGPPUBKEYALGO_DSA:
            for (i = 0; i < 4; i++)
                s += pgpMpiLen(s);
-           /*@innerbreak@*/ break;
+           break;
        }
 
        ctx = rpmDigestInit(PGPHASHALGO_SHA1, RPMDIGEST_NONE);
@@ -924,9 +863,7 @@ int pgpPubkeyFingerprint(const byte * pkt, /*@unused@*/ unsigned int pktlen,
        (void) rpmDigestFinal(ctx, (void **)&SHA1, NULL, 0);
 
        s = SHA1 + 12;
-/*@-boundswrite@*/
        memmove(keyid, s, 8);
-/*@=boundswrite@*/
        rc = 0;
 
        if (SHA1) free(SHA1);
@@ -970,14 +907,11 @@ int pgpPrtPkt(const byte *pkt, unsigned int pleft)
     case PGPTAG_PUBLIC_KEY:
        /* Get the public key fingerprint. */
        if (_digp) {
-/*@-mods@*/
            if (!pgpPubkeyFingerprint(pkt, pktlen, _digp->signid))
                _digp->saved |= PGPDIG_SAVED_ID;
            else
                memset(_digp->signid, 0, sizeof(_digp->signid));
-/*@=mods@*/
        }
-       /*@fallthrough@*/
     case PGPTAG_PUBLIC_SUBKEY:
        rc = pgpPrtKey(tag, h, hlen);
        break;
@@ -1023,7 +957,6 @@ pgpDig pgpNewDig(void)
     return dig;
 }
 
-/*@-boundswrite@*/
 void pgpCleanDig(pgpDig dig)
 {
     if (dig != NULL) {
@@ -1032,12 +965,11 @@ void pgpCleanDig(pgpDig dig)
        dig->pubkey.userid = _free(dig->pubkey.userid);
        dig->signature.hash = _free(dig->signature.hash);
        dig->pubkey.hash = _free(dig->pubkey.hash);
-       /*@-unqualifiedtrans@*/ /* FIX: double indirection */
+       /* FIX: double indirection */
        for (i = 0; i < 4; i++) {
            dig->signature.params[i] = _free(dig->signature.params[i]);
            dig->pubkey.params[i] = _free(dig->pubkey.params[i]);
        }
-       /*@=unqualifiedtrans@*/
 
        memset(&dig->signature, 0, sizeof(dig->signature));
        memset(&dig->pubkey, 0, sizeof(dig->pubkey));
@@ -1053,30 +985,22 @@ void pgpCleanDig(pgpDig dig)
        mpnfree(&dig->c);
        mpnfree(&dig->rsahm);
     }
-/*@-nullstate@*/
     return;
-/*@=nullstate@*/
 }
-/*@=boundswrite@*/
 
-pgpDig pgpFreeDig(/*@only@*/ /*@null@*/ pgpDig dig)
-       /*@modifies dig @*/
+pgpDig pgpFreeDig(pgpDig dig)
 {
     if (dig != NULL) {
 
        /* DUmp the signature/pubkey data. */
        pgpCleanDig(dig);
 
-       /*@-branchstate@*/
        if (dig->hdrsha1ctx != NULL)
            (void) rpmDigestFinal(dig->hdrsha1ctx, NULL, NULL, 0);
-       /*@=branchstate@*/
        dig->hdrsha1ctx = NULL;
 
-       /*@-branchstate@*/
        if (dig->sha1ctx != NULL)
            (void) rpmDigestFinal(dig->sha1ctx, NULL, NULL, 0);
-       /*@=branchstate@*/
        dig->sha1ctx = NULL;
 
        mpbfree(&dig->p);
@@ -1088,17 +1012,13 @@ pgpDig pgpFreeDig(/*@only@*/ /*@null@*/ pgpDig dig)
        mpnfree(&dig->s);
 
 #ifdef NOTYET
-       /*@-branchstate@*/
        if (dig->hdrmd5ctx != NULL)
            (void) rpmDigestFinal(dig->hdrmd5ctx, NULL, NULL, 0);
-       /*@=branchstate@*/
        dig->hdrmd5ctx = NULL;
 #endif
 
-       /*@-branchstate@*/
        if (dig->md5ctx != NULL)
            (void) rpmDigestFinal(dig->md5ctx, NULL, NULL, 0);
-       /*@=branchstate@*/
        dig->md5ctx = NULL;
 
        mpbfree(&dig->rsa_pk.n);
@@ -1113,8 +1033,6 @@ pgpDig pgpFreeDig(/*@only@*/ /*@null@*/ pgpDig dig)
 }
 
 int pgpPrtPkts(const byte * pkts, unsigned int pktlen, pgpDig dig, int printing)
-       /*@globals _dig, _digp, _print @*/
-       /*@modifies _dig, _digp, *_digp, _print @*/
 {
     unsigned int val = *pkts;
     const byte *p;
@@ -1140,7 +1058,6 @@ int pgpPrtPkts(const byte * pkts, unsigned int pktlen, pgpDig dig, int printing)
     return 0;
 }
 
-/*@-boundswrite@*/
 pgpArmor pgpReadPkts(const char * fn, const byte ** pkt, size_t * pktlen)
 {
     byte * b = NULL;
@@ -1199,7 +1116,7 @@ pgpArmor pgpReadPkts(const char * fn, const byte ** pkt, size_t * pktlen)
                continue;
            *t = '\0';
            pstate++;
-           /*@switchbreak@*/ break;
+           break;
        case 1:
            enc = NULL;
            rc = pgpValTok(pgpArmorKeyTbl, t, te);
@@ -1211,7 +1128,7 @@ pgpArmor pgpReadPkts(const char * fn, const byte ** pkt, size_t * pktlen)
            }
            enc = te;           /* Start of encoded packets */
            pstate++;
-           /*@switchbreak@*/ break;
+           break;
        case 2:
            crcenc = NULL;
            if (*t != '=')
@@ -1219,7 +1136,7 @@ pgpArmor pgpReadPkts(const char * fn, const byte ** pkt, size_t * pktlen)
            *t++ = '\0';        /* Terminate encoded packets */
            crcenc = t;         /* Start of encoded crc */
            pstate++;
-           /*@switchbreak@*/ break;
+           break;
        case 3:
            pstate = 0;
            if (!TOKEQ(t, "-----END PGP ")) {
@@ -1272,7 +1189,7 @@ pgpArmor pgpReadPkts(const char * fn, const byte ** pkt, size_t * pktlen)
            blen = declen;
            ec = PGPARMOR_PUBKEY;       /* XXX ASCII Pubkeys only, please. */
            goto exit;
-           /*@notreached@*/ /*@switchbreak@*/ break;
+           break;
        }
     }
     ec = PGPARMOR_NONE;
@@ -1286,7 +1203,6 @@ exit:
        *pktlen = blen;
     return ec;
 }
-/*@=boundswrite@*/
 
 char * pgpArmorWrap(int atype, const unsigned char * s, size_t ns)
 {
@@ -1297,7 +1213,6 @@ char * pgpArmorWrap(int atype, const unsigned char * s, size_t ns)
     int lc;
 
     nt = ((ns + 2) / 3) * 4;
-    /*@-globs@*/
     /* Add additional bytes necessary for eol string(s). */
     if (b64encode_chars_per_line > 0 && b64encode_eolstr != NULL) {
        lc = (nt + b64encode_chars_per_line - 1) / b64encode_chars_per_line;
@@ -1305,18 +1220,14 @@ char * pgpArmorWrap(int atype, const unsigned char * s, size_t ns)
         ++lc;
        nt += lc * strlen(b64encode_eolstr);
     }
-    /*@=globs@*/
 
     nt += 512; /* XXX slop for armor and crc */
 
-/*@-boundswrite@*/
     val = t = xmalloc(nt + 1);
     *t = '\0';
     t = stpcpy(t, "-----BEGIN PGP ");
     t = stpcpy(t, pgpValStr(pgpArmorTbl, atype));
-    /*@-globs@*/
     t = stpcpy( stpcpy(t, "-----\nVersion: rpm-"), VERSION);
-    /*@=globs@*/
     t = stpcpy(t, " (beecrypt-4.1.2)\n\n");
 
     if ((enc = b64encode(s, ns)) != NULL) {
@@ -1332,9 +1243,7 @@ char * pgpArmorWrap(int atype, const unsigned char * s, size_t ns)
     t = stpcpy(t, "-----END PGP ");
     t = stpcpy(t, pgpValStr(pgpArmorTbl, atype));
     t = stpcpy(t, "-----\n");
-/*@=boundswrite@*/
 
     return val;
 }
 
-/*@=boundsread@*/
index d90d4e7..758aee8 100644 (file)
 #include <string.h>
 
 #if !defined(_BEECRYPT_API_H)
-/*@-redef@*/
 typedef unsigned char byte;
-/*@=redef@*/
 #endif /* _BEECRYPT_API_H */
 
 /**
  */
-typedef /*@abstract@*/ struct DIGEST_CTX_s * DIGEST_CTX;
+typedef struct DIGEST_CTX_s * DIGEST_CTX;
 
 /**
  */
 typedef const struct pgpValTbl_s {
     int val;
-/*@observer@*/ const char * str;
+const char * str;
 } * pgpValTbl;
  
 /**
@@ -64,7 +62,6 @@ typedef enum pgpTag_e {
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpTagTbl[];
 
 /**
@@ -114,7 +111,6 @@ typedef struct pgpPktPubkey_s {
  * There are a number of possible meanings for a signature, which are
  * specified in a signature type octet in any given signature.
  */
-/*@-typeuse@*/
 typedef enum pgpSigType_e {
     PGPSIGTYPE_BINARY           = 0x00, /*!< Binary document */
     PGPSIGTYPE_TEXT             = 0x01, /*!< Canonical text document */
@@ -134,11 +130,9 @@ typedef enum pgpSigType_e {
     PGPSIGTYPE_CERT_REVOKE      = 0x30, /*!< Certification revocation */
     PGPSIGTYPE_TIMESTAMP        = 0x40  /*!< Timestamp */
 } pgpSigType;
-/*@=typeuse@*/
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpSigTypeTbl[];
 
 /**
@@ -164,7 +158,6 @@ extern struct pgpValTbl_s pgpSigTypeTbl[];
  * encryption. Implementations SHOULD implement RSA keys.
  * Implementations MAY implement any other algorithm.
  */
-/*@-typeuse@*/
 typedef enum pgpPubkeyAlgo_e {
     PGPPUBKEYALGO_RSA          =  1,   /*!< RSA */
     PGPPUBKEYALGO_RSA_ENCRYPT  =  2,   /*!< RSA(Encrypt-Only) */
@@ -176,11 +169,9 @@ typedef enum pgpPubkeyAlgo_e {
     PGPPUBKEYALGO_ELGAMAL      = 20,   /*!< Elgamal */
     PGPPUBKEYALGO_DH           = 21    /*!< Diffie-Hellman (X9.42) */
 } pgpPubkeyAlgo;
-/*@=typeuse@*/
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpPubkeyTbl[];
 
 /**
@@ -207,7 +198,6 @@ extern struct pgpValTbl_s pgpPubkeyTbl[];
  * implement IDEA and CAST5. Implementations MAY implement any other
  * algorithm.
  */
-/*@-typeuse@*/
 typedef enum pgpSymkeyAlgo_e {
     PGPSYMKEYALGO_PLAINTEXT    =  0,   /*!< Plaintext */
     PGPSYMKEYALGO_IDEA         =  1,   /*!< IDEA */
@@ -222,12 +212,10 @@ typedef enum pgpSymkeyAlgo_e {
     PGPSYMKEYALGO_TWOFISH      = 10,   /*!< TWOFISH(256-bit key) */
     PGPSYMKEYALGO_NOENCRYPT    = 110   /*!< no encryption */
 } pgpSymkeyAlgo;
-/*@=typeuse@*/
 
 /**
  * Symmetric key (string, value) pairs.
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpSymkeyTbl[];
 
 /**
@@ -245,19 +233,16 @@ extern struct pgpValTbl_s pgpSymkeyTbl[];
  * Implementations MUST implement uncompressed data. Implementations
  * SHOULD implement ZIP. Implementations MAY implement ZLIB.
  */
-/*@-typeuse@*/
 typedef enum pgpCompressAlgo_e {
     PGPCOMPRESSALGO_NONE       =  0,   /*!< Uncompressed */
     PGPCOMPRESSALGO_ZIP                =  1,   /*!< ZIP */
     PGPCOMPRESSALGO_ZLIB       =  2,   /*!< ZLIB */
     PGPCOMPRESSALGO_BZIP2      =  3    /*!< BZIP2 */
 } pgpCompressAlgo;
-/*@=typeuse@*/
 
 /**
  * Compression (string, value) pairs.
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpCompressionTbl[];
 
 /**
@@ -296,7 +281,6 @@ typedef enum pgpHashAlgo_e {
 /**
  * Hash (string, value) pairs.
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpHashTbl[];
 
 /**
@@ -426,7 +410,6 @@ typedef struct pgpPktSigV4_s {
  * marked critical but is unknown to the evaluating software, the
  * evaluator SHOULD consider the signature to be in error.
  */
-/*@-typeuse@*/
 typedef enum pgpSubType_e {
     PGPSUBTYPE_NONE            =   0, /*!< none */
     PGPSUBTYPE_SIG_CREATE_TIME =   2, /*!< signature creation time */
@@ -467,12 +450,10 @@ typedef enum pgpSubType_e {
 
     PGPSUBTYPE_CRITICAL                = 128  /*!< critical subpacket marker */
 } pgpSubType;
-/*@=typeuse@*/
 
 /**
  * Subtype (string, value) pairs.
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpSubTypeTbl[];
 
 /**
@@ -926,7 +907,6 @@ union pgpPktPre_u {
 
 /**
  */
-/*@-typeuse@*/
 typedef enum pgpArmor_e {
     PGPARMOR_ERR_CRC_CHECK             = -7,
     PGPARMOR_ERR_BODY_DECODE           = -6,
@@ -945,17 +925,14 @@ typedef enum pgpArmor_e {
     PGPARMOR_PRIVKEY           =  6, /*!< PRIVATE KEY BLOCK */
     PGPARMOR_SECKEY            =  7  /*!< SECRET KEY BLOCK */
 } pgpArmor;
-/*@=typeuse@*/
 
 /**
  * Armor (string, value) pairs.
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpArmorTbl[];
 
 /**
  */
-/*@-typeuse@*/
 typedef enum pgpArmorKey_e {
     PGPARMORKEY_VERSION                = 1, /*!< Version: */
     PGPARMORKEY_COMMENT                = 2, /*!< Comment: */
@@ -963,12 +940,10 @@ typedef enum pgpArmorKey_e {
     PGPARMORKEY_HASH           = 4, /*!< Hash: */
     PGPARMORKEY_CHARSET                = 5  /*!< Charset: */
 } pgpArmorKey;
-/*@=typeuse@*/
 
 /**
  * Armor key (string, value) pairs.
  */
-/*@observer@*/ /*@unchecked@*/ /*@unused@*/
 extern struct pgpValTbl_s pgpArmorKeyTbl[];
 
 /** \ingroup rpmio
@@ -979,7 +954,6 @@ typedef enum rpmDigestFlags_e {
 } rpmDigestFlags;
 
 
-/*@-fcnuse@*/
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -990,16 +964,13 @@ extern "C" {
  * @param nbytes       no. of bytes
  * @return             native-endian integer
  */
-/*@unused@*/ static inline
+static inline
 unsigned int pgpGrab(const byte *s, int nbytes)
-       /*@*/
 {
     unsigned int i = 0;
     int nb = (nbytes <= sizeof(i) ? nbytes : sizeof(i));
-/*@-boundsread@*/
     while (nb--)
        i = (i << 8) | *s++;
-/*@=boundsread@*/
     return i;
 }
 
@@ -1009,11 +980,9 @@ unsigned int pgpGrab(const byte *s, int nbytes)
  * @retval *lenp       no. of bytes in packet
  * @return             no. of bytes in length prefix
  */
-/*@unused@*/ static inline
-int pgpLen(const byte *s, /*@out@*/ unsigned int *lenp)
-       /*@modifies *lenp @*/
+static inline
+int pgpLen(const byte *s, unsigned int *lenp)
 {
-/*@-boundswrite@*/
     if (*s < 192) {
        (*lenp) = *s++;
        return 1;
@@ -1024,7 +993,6 @@ int pgpLen(const byte *s, /*@out@*/ unsigned int *lenp)
        (*lenp) = pgpGrab(s+1, 4);
        return 5;
     }
-/*@=boundswrite@*/
 }
 
 /**
@@ -1032,10 +1000,8 @@ int pgpLen(const byte *s, /*@out@*/ unsigned int *lenp)
  * @param p            pointer to multiprecision integer
  * @return             no. of bits
  */
-/*@unused@*/ static inline
+static inline
 unsigned int pgpMpiBits(const byte *p)
-       /*@requires maxRead(p) >= 1 @*/
-       /*@*/
 {
     return ((p[0] << 8) | p[1]);
 }
@@ -1045,10 +1011,8 @@ unsigned int pgpMpiBits(const byte *p)
  * @param p            pointer to multiprecision integer
  * @return             no. of bytes
  */
-/*@unused@*/ static inline
+static inline
 unsigned int pgpMpiLen(const byte *p)
-       /*@requires maxRead(p) >= 1 @*/
-       /*@*/
 {
     return (2 + ((pgpMpiBits(p)+7)>>3));
 }
@@ -1060,12 +1024,10 @@ unsigned int pgpMpiLen(const byte *p)
  * @param nbytes       no. of bytes
  * @return             target buffer
  */
-/*@unused@*/ static inline
-char * pgpHexCvt(/*@returned@*/ char *t, const byte *s, int nbytes)
-       /*@modifies *t @*/
+static inline
+char * pgpHexCvt(char *t, const byte *s, int nbytes)
 {
     static char hex[] = "0123456789abcdef";
-/*@-boundswrite@*/
     while (nbytes-- > 0) {
        unsigned int i;
        i = *s++;
@@ -1073,7 +1035,6 @@ char * pgpHexCvt(/*@returned@*/ char *t, const byte *s, int nbytes)
        *t++ = hex[ (i     ) & 0xf ];
     }
     *t = '\0';
-/*@=boundswrite@*/
     return t;
 }
 
@@ -1084,9 +1045,8 @@ char * pgpHexCvt(/*@returned@*/ char *t, const byte *s, int nbytes)
  * @param plen         no. of bytes
  * @return             hex formatted string
  */
-/*@unused@*/ static inline /*@observer@*/
+static inline
 char * pgpHexStr(const byte *p, unsigned int plen)
-       /*@*/
 {
     static char prbuf[8*BUFSIZ];       /* XXX ick */
     char *t = prbuf;
@@ -1100,10 +1060,8 @@ char * pgpHexStr(const byte *p, unsigned int plen)
  * @param p            bytes
  * @return             hex formatted string
  */
-/*@unused@*/ static inline /*@observer@*/
+static inline
 const char * pgpMpiStr(const byte *p)
-       /*@requires maxRead(p) >= 3 @*/
-       /*@*/
 {
     static char prbuf[8*BUFSIZ];       /* XXX ick */
     char *t = prbuf;
@@ -1119,9 +1077,8 @@ const char * pgpMpiStr(const byte *p)
  * @param val          byte value to lookup
  * @return             string value of byte
  */
-/*@unused@*/ static inline /*@observer@*/
+static inline
 const char * pgpValStr(pgpValTbl vs, byte val)
-       /*@*/
 {
     do {
        if (vs->val == val)
@@ -1137,9 +1094,8 @@ const char * pgpValStr(pgpValTbl vs, byte val)
  * @param se           end-of-string address
  * @return             byte value
  */
-/*@unused@*/ static inline
+static inline
 int pgpValTok(pgpValTbl vs, const char * s, const char * se)
-       /*@*/
 {
     do {
        int vlen = strlen(vs->str);
@@ -1149,16 +1105,13 @@ int pgpValTok(pgpValTbl vs, const char * s, const char * se)
     return vs->val;
 }
 
-/*@-exportlocal@*/
 /**
  * Print an OpenPGP value.
  * @param pre          output prefix
  * @param vs           table of (string,value) pairs
  * @param val          byte value to print
  */
-void pgpPrtVal(const char * pre, pgpValTbl vs, byte val)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+void pgpPrtVal(const char * pre, pgpValTbl vs, byte val);
 
 /**
  * Print/parse an OpenPGP subtype packet.
@@ -1167,9 +1120,7 @@ void pgpPrtVal(const char * pre, pgpValTbl vs, byte val)
  * @param sigtype      signature type
  * @return             0 on success
  */
-int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype);
 
 /**
  * Print/parse an OpenPGP signature packet.
@@ -1178,9 +1129,7 @@ int pgpPrtSubType(const byte *h, unsigned int hlen, pgpSigType sigtype)
  * @param hlen         packet length (no. of bytes)
  * @return             0 on success
  */
-int pgpPrtSig(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int pgpPrtSig(pgpTag tag, const byte *h, unsigned int hlen);
 
 /**
  * Print/parse an OpenPGP key packet.
@@ -1189,9 +1138,7 @@ int pgpPrtSig(pgpTag tag, const byte *h, unsigned int hlen)
  * @param hlen         packet length (no. of bytes)
  * @return             0 on success
  */
-int pgpPrtKey(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int pgpPrtKey(pgpTag tag, const byte *h, unsigned int hlen);
 
 /**
  * Print/parse an OpenPGP userid packet.
@@ -1200,9 +1147,7 @@ int pgpPrtKey(pgpTag tag, const byte *h, unsigned int hlen)
  * @param hlen         packet length (no. of bytes)
  * @return             0 on success
  */
-int pgpPrtUserID(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int pgpPrtUserID(pgpTag tag, const byte *h, unsigned int hlen);
 
 /**
  * Print/parse an OpenPGP comment packet.
@@ -1211,9 +1156,7 @@ int pgpPrtUserID(pgpTag tag, const byte *h, unsigned int hlen)
  * @param hlen         packet length (no. of bytes)
  * @return             0 on success
  */
-int pgpPrtComment(pgpTag tag, const byte *h, unsigned int hlen)
-       /*@globals fileSystem @*/
-       /*@modifies fileSystem @*/;
+int pgpPrtComment(pgpTag tag, const byte *h, unsigned int hlen);
 
 /**
  * Calculate OpenPGP public key fingerprint.
@@ -1224,8 +1167,7 @@ int pgpPrtComment(pgpTag tag, const byte *h, unsigned int hlen)
  * @return             0 on sucess, else -1
  */
 int pgpPubkeyFingerprint(const byte * pkt, unsigned int pktlen,
-               /*@out@*/ byte * keyid)
-       /*@modifies *keyid @*/;
+               byte * keyid);
 
 /**
  * Print/parse next OpenPGP packet.
@@ -1233,10 +1175,7 @@ int pgpPubkeyFingerprint(const byte * pkt, unsigned int pktlen,
  * @param pleft                no. bytes remaining
  * @return             -1 on error, otherwise this packet length
  */
-int pgpPrtPkt(const byte *pkt, unsigned int pleft)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
-/*@=exportlocal@*/
+int pgpPrtPkt(const byte *pkt, unsigned int pleft);
 
 /**
  * Print/parse a OpenPGP packet(s).
@@ -1246,9 +1185,7 @@ int pgpPrtPkt(const byte *pkt, unsigned int pleft)
  * @param printing     should packets be printed?
  * @return             -1 on error, 0 on success
  */
-int pgpPrtPkts(const byte *pkts, unsigned int pktlen, pgpDig dig, int printing)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies dig, fileSystem, internalState @*/;
+int pgpPrtPkts(const byte *pkts, unsigned int pktlen, pgpDig dig, int printing);
 
 /**
  * Parse armored OpenPGP packets from a file.
@@ -1258,9 +1195,7 @@ int pgpPrtPkts(const byte *pkts, unsigned int pktlen, pgpDig dig, int printing)
  * @return             type of armor found
  */
 pgpArmor pgpReadPkts(const char * fn,
-               /*@out@*/ const byte ** pkt, /*@out@*/ size_t * pktlen)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies *pkt, *pktlen, fileSystem, internalState @*/;
+               const byte ** pkt, size_t * pktlen);
 
 /**
  * Wrap a OpenPGP packets in ascii armor for transport.
@@ -1269,45 +1204,36 @@ pgpArmor pgpReadPkts(const char * fn,
  * @param ns           binary pkt data length
  * @return             formatted string
  */
-char * pgpArmorWrap(int atype, const unsigned char * s, size_t ns)
-       /*@*/;
+char * pgpArmorWrap(int atype, const unsigned char * s, size_t ns);
 
 /**
  * Create a container for parsed OpenPGP packates.
  * @return             container
  */
-/*@only@*/
-pgpDig pgpNewDig(void)
-       /*@*/;
+pgpDig pgpNewDig(void);
 
 /**
  * Release (malloc'd) data from container.
  * @param dig          container
  */
-void pgpCleanDig(/*@null@*/ pgpDig dig)
-       /*@modifies dig @*/;
+void pgpCleanDig(pgpDig dig);
 
 /**
  * Destroy a container for parsed OpenPGP packates.
  * @param dig          container
  * @return             NULL always
  */
-/*@only@*/ /*@null@*/
-pgpDig pgpFreeDig(/*@only@*/ /*@null@*/ pgpDig dig)
-       /*@modifies dig @*/;
+pgpDig pgpFreeDig(pgpDig dig);
 
 /**
  * Is buffer at beginning of an OpenPGP packet?
  * @param p            buffer
  * @return             1 if an OpenPGP packet, 0 otherwise
  */
-/*@unused@*/ static inline
+static inline
 int pgpIsPkt(const byte * p)
-       /*@*/
 {
-/*@-boundsread@*/
     unsigned int val = *p++;
-/*@=boundsread@*/
     pgpTag tag;
     int rc;
 
@@ -1363,17 +1289,14 @@ int pgpIsPkt(const byte * p)
  * @param len          no. of bytes
  * @return             crc of buffer
  */
-/*@unused@*/ static inline
+static inline
 unsigned int pgpCRC(const byte *octets, size_t len)
-       /*@*/
 {
     unsigned int crc = CRC24_INIT;
     int i;
 
     while (len--) {
-/*@-boundsread@*/
        crc ^= (*octets++) << 16;
-/*@=boundsread@*/
        for (i = 0; i < 8; i++) {
            crc <<= 1;
            if (crc & 0x1000000)
@@ -1388,9 +1311,7 @@ unsigned int pgpCRC(const byte *octets, size_t len)
  * @param octx         existing digest context
  * @return             duplicated digest context
  */
-/*@only@*/
-DIGEST_CTX rpmDigestDup(DIGEST_CTX octx)
-       /*@*/;
+DIGEST_CTX rpmDigestDup(DIGEST_CTX octx);
 
 /** \ingroup rpmio
  * Initialize digest.
@@ -1399,9 +1320,7 @@ DIGEST_CTX rpmDigestDup(DIGEST_CTX octx)
  * @param flags                bit(s) to control digest operation
  * @return             digest context
  */
-/*@only@*/ /*@null@*/
-DIGEST_CTX rpmDigestInit(pgpHashAlgo hashalgo, rpmDigestFlags flags)
-       /*@*/;
+DIGEST_CTX rpmDigestInit(pgpHashAlgo hashalgo, rpmDigestFlags flags);
 
 /** \ingroup rpmio
  * Update context with next plain text buffer.
@@ -1410,8 +1329,7 @@ DIGEST_CTX rpmDigestInit(pgpHashAlgo hashalgo, rpmDigestFlags flags)
  * @param len          no. bytes of data
  * @return             0 on success
  */
-int rpmDigestUpdate(/*@null@*/ DIGEST_CTX ctx, const void * data, size_t len)
-       /*@modifies ctx @*/;
+int rpmDigestUpdate(DIGEST_CTX ctx, const void * data, size_t len);
 
 /** \ingroup rpmio
  * Return digest and destroy context.
@@ -1424,14 +1342,12 @@ int rpmDigestUpdate(/*@null@*/ DIGEST_CTX ctx, const void * data, size_t len)
  * @param asAscii      return digest as ascii string?
  * @return             0 on success
  */
-int rpmDigestFinal(/*@only@*/ /*@null@*/ DIGEST_CTX ctx,
-       /*@null@*/ /*@out@*/ void ** datap,
-       /*@null@*/ /*@out@*/ size_t * lenp, int asAscii)
-               /*@modifies *datap, *lenp @*/;
+int rpmDigestFinal(DIGEST_CTX ctx,
+       void ** datap,
+       size_t * lenp, int asAscii);
 
 #ifdef __cplusplus
 }
 #endif
-/*@=fcnuse@*/
 
 #endif /* H_RPMPGP */
index a13ab3b..dc91026 100644 (file)
 #include "ugid.h"
 #include "debug.h"
 
-/*@access DIR @*/
-/*@access FD_t @*/
-/*@access urlinfo @*/
 
 /**
  * Wrapper to free(3), hides const compilation noise, permit NULL, return NULL.
  * @param p            memory to free
  * @retval             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ /*@out@*/ const void * p)
-       /*@modifies p@*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
 }
 
 /* =============================================================== */
-static int ftpMkdir(const char * path, /*@unused@*/ mode_t mode)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
+static int ftpMkdir(const char * path, mode_t mode)
 {
     int rc;
     if ((rc = ftpCmd("MKD", path, NULL)) != 0)
@@ -51,22 +45,16 @@ static int ftpMkdir(const char * path, /*@unused@*/ mode_t mode)
 }
 
 static int ftpChdir(const char * path)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     return ftpCmd("CWD", path, NULL);
 }
 
 static int ftpRmdir(const char * path)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     return ftpCmd("RMD", path, NULL);
 }
 
 static int ftpRename(const char * oldpath, const char * newpath)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     int rc;
     if ((rc = ftpCmd("RNFR", oldpath, NULL)) != 0)
@@ -75,8 +63,6 @@ static int ftpRename(const char * oldpath, const char * newpath)
 }
 
 static int ftpUnlink(const char * path)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     return ftpCmd("DELE", path, NULL);
 }
@@ -90,23 +76,22 @@ int Mkdir (const char * path, mode_t mode)
     switch (ut) {
     case URL_IS_FTP:
        return ftpMkdir(path, mode);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef WITH_NEON
        return davMkdir(path, mode);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return mkdir(path, mode);
 }
@@ -119,7 +104,7 @@ int Chdir (const char * path)
     switch (ut) {
     case URL_IS_FTP:
        return ftpChdir(path);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef NOTYET
@@ -127,17 +112,16 @@ int Chdir (const char * path)
 #else
        return -2;
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return chdir(path);
 }
@@ -150,23 +134,22 @@ int Rmdir (const char * path)
     switch (ut) {
     case URL_IS_FTP:
        return ftpRmdir(path);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef WITH_NEON
        return davRmdir(path);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return rmdir(path);
 }
@@ -189,7 +172,7 @@ int Rename (const char * oldpath, const char * newpath)
 #ifdef WITH_NEON
        return davRename(oldpath, newpath);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_FTP:           /* XXX WRONG WRONG WRONG */
     case URL_IS_PATH:
     case URL_IS_UNKNOWN:
@@ -198,7 +181,7 @@ int Rename (const char * oldpath, const char * newpath)
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
 
     newut = urlPath(newpath, &ne);
@@ -210,7 +193,7 @@ fprintf(stderr, "*** rename old %*s new %*s\n", (int)(oe - oldpath), oldpath, (i
            !xstrncasecmp(oldpath, newpath, (oe - oldpath))))
            return -2;
        return ftpRename(oldpath, newpath);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:         /* XXX WRONG WRONG WRONG */
     case URL_IS_HTTP:          /* XXX WRONG WRONG WRONG */
     case URL_IS_PATH:
@@ -223,7 +206,7 @@ fprintf(stderr, "*** rename old %*s new %*s\n", (int)(oe - oldpath), oldpath, (i
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return rename(oldpath, newpath);
 }
@@ -246,7 +229,7 @@ int Link (const char * oldpath, const char * newpath)
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
 
     newut = urlPath(newpath, &ne);
@@ -269,7 +252,7 @@ fprintf(stderr, "*** link old %*s new %*s\n", (int)(oe - oldpath), oldpath, (int
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return link(oldpath, newpath);
 }
@@ -283,23 +266,22 @@ int Unlink(const char * path) {
     switch (ut) {
     case URL_IS_FTP:
        return ftpUnlink(path);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef WITH_NEON
        return davUnlink(path);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return unlink(path);
 }
@@ -312,26 +294,18 @@ int Unlink(const char * path) {
 /*
  * FIXME: this is broken. It depends on mc not crossing border on month!
  */
-/*@unchecked@*/
 static int current_mday;
-/*@unchecked@*/
 static int current_mon;
-/*@unchecked@*/
 static int current_year;
 
 /* Following stuff (parse_ls_lga) is used by ftpfs and extfs */
 #define MAXCOLS                30
 
-/*@unchecked@*/
 static char *columns [MAXCOLS];        /* Points to the string in column n */
-/*@unchecked@*/
 static int   column_ptr [MAXCOLS]; /* Index from 0 to the starting positions of the columns */
 
-/*@-boundswrite@*/
 static int
 vfs_split_text (char *p)
-       /*@globals columns, column_ptr @*/
-       /*@modifies *p, columns, column_ptr @*/
 {
     char *original = p;
     int  numcols;
@@ -349,41 +323,31 @@ vfs_split_text (char *p)
     }
     return numcols;
 }
-/*@=boundswrite@*/
 
-/*@-boundsread@*/
 static int
 is_num (int idx)
-       /*@*/
 {
     if (!columns [idx] || columns [idx][0] < '0' || columns [idx][0] > '9')
        return 0;
     return 1;
 }
-/*@=boundsread@*/
 
-/*@-boundsread@*/
 static int
-is_dos_date(/*@null@*/ const char *str)
-       /*@*/
+is_dos_date(const char *str)
 {
     if (str != NULL && strlen(str) == 8 &&
                str[2] == str[5] && strchr("\\-/", (int)str[2]) != NULL)
        return 1;
     return 0;
 }
-/*@=boundsread@*/
 
 static int
-is_week (/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
-       /*@modifies *tim @*/
+is_week (const char * str, struct tm * tim)
 {
-/*@observer@*/ static const char * week = "SunMonTueWedThuFriSat";
+static const char * week = "SunMonTueWedThuFriSat";
     const char * pos;
 
-    /*@-observertrans -mayaliasunique@*/
     if (str != NULL && (pos=strstr(week, str)) != NULL) {
-    /*@=observertrans =mayaliasunique@*/
         if (tim != NULL)
            tim->tm_wday = (pos - week)/3;
        return 1;
@@ -392,15 +356,12 @@ is_week (/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
 }
 
 static int
-is_month (/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
-       /*@modifies *tim @*/
+is_month (const char * str, struct tm * tim)
 {
-/*@observer@*/ static const char * month = "JanFebMarAprMayJunJulAugSepOctNovDec";
+static const char * month = "JanFebMarAprMayJunJulAugSepOctNovDec";
     const char * pos;
     
-    /*@-observertrans -mayaliasunique@*/
     if (str != NULL && (pos = strstr(month, str)) != NULL) {
-    /*@=observertrans -mayaliasunique@*/
         if (tim != NULL)
            tim->tm_mon = (pos - month)/3;
        return 1;
@@ -409,8 +370,7 @@ is_month (/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
 }
 
 static int
-is_time (/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
-       /*@modifies *tim @*/
+is_time (const char * str, struct tm * tim)
 {
     const char * p, * p2;
 
@@ -428,8 +388,7 @@ is_time (/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
     return 1;
 }
 
-static int is_year(/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
-       /*@modifies *tim @*/
+static int is_year(const char * str, struct tm * tim)
 {
     long year;
 
@@ -461,7 +420,6 @@ static int is_year(/*@null@*/ const char * str, /*@out@*/ struct tm * tim)
 
 static int
 vfs_parse_filetype (char c)
-       /*@*/
 {
     switch (c) {
         case 'd': return S_IFDIR; 
@@ -480,7 +438,6 @@ vfs_parse_filetype (char c)
 }
 
 static int vfs_parse_filemode (const char *p)
-       /*@*/
 {      /* converts rw-rw-rw- into 0666 */
     int res = 0;
     switch (*(p++)) {
@@ -538,9 +495,7 @@ static int vfs_parse_filemode (const char *p)
     return res;
 }
 
-/*@-boundswrite@*/
-static int vfs_parse_filedate(int idx, /*@out@*/ time_t *t)
-       /*@modifies *t @*/
+static int vfs_parse_filedate(int idx, time_t *t)
 {      /* This thing parses from idx in columns[] array */
 
     char *p;
@@ -585,9 +540,7 @@ static int vfs_parse_filedate(int idx, /*@out@*/ time_t *t)
 
        /* Here just this special case with MM-DD-YY */
         if (is_dos_date(p)){
-           /*@-mods@*/
             p[2] = p[5] = '-';
-           /*@=mods@*/
            
            memset(d, 0, sizeof(d));
            if (sscanf(p, "%2d-%2d-%2d", &d[0], &d[1], &d[2]) == 3){
@@ -646,14 +599,11 @@ static int vfs_parse_filedate(int idx, /*@out@*/ time_t *t)
         *t = 0;
     return idx;
 }
-/*@=boundswrite@*/
 
-/*@-boundswrite@*/
 static int
-vfs_parse_ls_lga (char * p, /*@out@*/ struct stat * st,
-               /*@out@*/ const char ** filename,
-               /*@out@*/ const char ** linkname)
-       /*@modifies *p, *st, *filename, *linkname @*/
+vfs_parse_ls_lga (char * p, struct stat * st,
+               const char ** filename,
+               const char ** linkname)
 {
     int idx, idx2, num_cols;
     int i;
@@ -676,13 +626,11 @@ vfs_parse_ls_lga (char * p, /*@out@*/ struct stat * st,
        if (strlen (p) <= 8 || p [8] != ']')
            goto error;
        /* Should parse here the Notwell permissions :) */
-       /*@-unrecog@*/
        if (S_ISDIR (st->st_mode))
            st->st_mode |= (S_IRUSR | S_IRGRP | S_IROTH | S_IWUSR | S_IXUSR | S_IXGRP | S_IXOTH);
        else
            st->st_mode |= (S_IRUSR | S_IRGRP | S_IROTH | S_IWUSR);
        p += 9;
-       /*@=unrecog@*/
     } else {
        if ((i = vfs_parse_filemode(p)) == -1)
            goto error;
@@ -846,13 +794,10 @@ error:
     }
 #endif
 
-    /*@-usereleased@*/
     if (p_copy != p)           /* Carefull! */
-    /*@=usereleased@*/
        g_free (p_copy);
     return 0;
 }
-/*@=boundswrite@*/
 
 typedef enum {
        DO_FTP_STAT     = 1,
@@ -864,20 +809,17 @@ typedef enum {
 
 /**
  */
-/*@unchecked@*/
 static size_t ftpBufAlloced = 0;
 
 /**
  */
-/*@unchecked@*/
-static /*@only@*/ char * ftpBuf = NULL;
+static char * ftpBuf = NULL;
        
 #define alloca_strdup(_s)       strcpy(alloca(strlen(_s)+1), (_s))
 
-/*@-boundswrite@*/
 static int ftpNLST(const char * url, ftpSysCall_t ftpSysCall,
-               /*@out@*/ /*@null@*/ struct stat * st,
-               /*@out@*/ /*@null@*/ char * rlbuf, size_t rlbufsiz)
+               struct stat * st,
+               char * rlbuf, size_t rlbufsiz)
        /*@globals ftpBufAlloced, ftpBuf,
                h_errno, fileSystem, internalState @*/
        /*@modifies *st, *rlbuf, ftpBufAlloced, ftpBuf,
@@ -910,14 +852,12 @@ static int ftpNLST(const char * url, ftpSysCall_t ftpSysCall,
        break;
     default:
        urldn = alloca_strdup(url);
-       /*@-branchstate@*/
        if ((bn = strrchr(urldn, '/')) == NULL)
            return -2;
        else if (bn == path)
            bn = ".";
        else
            *bn++ = '\0';
-       /*@=branchstate@*/
        nbn = strlen(bn);
 
        rc = ftpChdir(urldn);           /* XXX don't care about CWD */
@@ -980,44 +920,44 @@ static int ftpNLST(const char * url, ftpSysCall_t ftpSysCall,
            while (*se && *se != '\n') se++;
            if (se > s && se[-1] == '\r') se[-1] = '\0';
            if (*se == '\0') 
-               /*@innerbreak@*/ break;
+               break;
            *se++ = '\0';
 
            if (!strncmp(s, "total ", sizeof("total ")-1))
-               /*@innercontinue@*/ continue;
+               continue;
 
            o = NULL;
            for (bingo = 0, n = se; n >= s; n--) {
                switch (*n) {
                case '\0':
                    oe = ne = n;
-                   /*@switchbreak@*/ break;
+                   break;
                case ' ':
                    if (o || !(n[-3] == ' ' && n[-2] == '-' && n[-1] == '>')) {
                        while (*(++n) == ' ')
                            {};
                        bingo++;
-                       /*@switchbreak@*/ break;
+                       break;
                    }
                    for (o = n + 1; *o == ' '; o++)
                        {};
                    n -= 3;
                    ne = n;
-                   /*@switchbreak@*/ break;
+                   break;
                default:
-                   /*@switchbreak@*/ break;
+                   break;
                }
                if (bingo)
-                   /*@innerbreak@*/ break;
+                   break;
            }
 
            if (nbn != (ne - n))        /* Same name length? */
-               /*@innercontinue@*/ continue;
+               continue;
            if (strncmp(n, bn, nbn))    /* Same name? */
-               /*@innercontinue@*/ continue;
+               continue;
 
            moretodo = 0;
-           /*@innerbreak@*/ break;
+           break;
        }
 
         if (moretodo && se > s) {
@@ -1034,7 +974,6 @@ static int ftpNLST(const char * url, ftpSysCall_t ftpSysCall,
        if (o && oe) {
            /* XXX FIXME: symlink, replace urldn/bn from [o,oe) and restart */
        }
-       /*@fallthrough@*/
     case DO_FTP_LSTAT:
        if (st == NULL || !(n && ne)) {
            rc = -1;
@@ -1066,11 +1005,9 @@ exit:
     (void) ufdClose(fd);
     return rc;
 }
-/*@=boundswrite@*/
 
 static const char * statstr(const struct stat * st,
-               /*@returned@*/ /*@out@*/ char * buf)
-       /*@modifies *buf @*/
+               char * buf)
 {
     sprintf(buf,
        "*** dev %x ino %x mode %0o nlink %d uid %d gid %d rdev %x size %x\n",
@@ -1085,13 +1022,10 @@ static const char * statstr(const struct stat * st,
     return buf;
 }
 
-/*@unchecked@*/
 static int ftp_st_ino = 0xdead0000;
 
 /* FIXME: borked for path with trailing '/' */
-static int ftpStat(const char * path, /*@out@*/ struct stat *st)
-       /*@globals ftp_st_ino, h_errno, fileSystem, internalState @*/
-       /*@modifies *st, ftp_st_ino, fileSystem, internalState @*/
+static int ftpStat(const char * path, struct stat *st)
 {
     char buf[1024];
     int rc;
@@ -1105,9 +1039,7 @@ fprintf(stderr, "*** ftpStat(%s) rc %d\n%s", path, rc, statstr(st, buf));
 }
 
 /* FIXME: borked for path with trailing '/' */
-static int ftpLstat(const char * path, /*@out@*/ struct stat *st)
-       /*@globals ftp_st_ino, h_errno, fileSystem, internalState @*/
-       /*@modifies *st, ftp_st_ino, fileSystem, internalState @*/
+static int ftpLstat(const char * path, struct stat *st)
 {
     char buf[1024];
     int rc;
@@ -1120,9 +1052,7 @@ fprintf(stderr, "*** ftpLstat(%s) rc %d\n%s\n", path, rc, statstr(st, buf));
     return rc;
 }
 
-static int ftpReadlink(const char * path, /*@out@*/ char * buf, size_t bufsiz)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies *buf, fileSystem, internalState @*/
+static int ftpReadlink(const char * path, char * buf, size_t bufsiz)
 {
     int rc;
     rc = ftpNLST(path, DO_FTP_READLINK, NULL, buf, bufsiz);
@@ -1131,11 +1061,7 @@ fprintf(stderr, "*** ftpReadlink(%s) rc %d\n", path, rc);
     return rc;
 }
 
-/*@-boundswrite@*/
-/*@null@*/
 static DIR * ftpOpendir(const char * path)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/
 {
     AVDIR avdir;
     struct dirent * dp;
@@ -1167,7 +1093,7 @@ fprintf(stderr, "*** ftpOpendir(%s)\n", path);
        switch (c) {
        case '/':
            sb = se;
-           /*@switchbreak@*/ break;
+           break;
        case '\r':
            if (sb == NULL) {
                for (sb = se; sb > s && sb[-1] != ' '; sb--)
@@ -1179,41 +1105,33 @@ fprintf(stderr, "*** ftpOpendir(%s)\n", path);
            if (*se == '\n') se++;
            sb = NULL;
            s = se;
-           /*@switchbreak@*/ break;
+           break;
        default:
-           /*@switchbreak@*/ break;
+           break;
        }
     }
 
     nb += sizeof(*avdir) + sizeof(*dp) + ((ac + 1) * sizeof(*av)) + (ac + 1);
     avdir = xcalloc(1, nb);
-    /*@-abstract@*/
     dp = (struct dirent *) (avdir + 1);
     av = (const char **) (dp + 1);
     dt = (unsigned char *) (av + (ac + 1));
     t = (char *) (dt + ac + 1);
-    /*@=abstract@*/
 
     avdir->fd = avmagicdir;
-/*@-usereleased@*/
     avdir->data = (char *) dp;
-/*@=usereleased@*/
     avdir->allocation = nb;
     avdir->size = ac;
     avdir->offset = -1;
     avdir->filepos = 0;
 
 #if defined(HAVE_PTHREAD_H)
-/*@-moduncon -noeffectuncon@*/
     (void) pthread_mutex_init(&avdir->lock, NULL);
-/*@=moduncon =noeffectuncon@*/
 #endif
 
     ac = 0;
-    /*@-dependenttrans -unrecog@*/
     dt[ac] = DT_DIR;   av[ac++] = t;   t = stpcpy(t, ".");     t++;
     dt[ac] = DT_DIR;   av[ac++] = t;   t = stpcpy(t, "..");    t++;
-    /*@=dependenttrans =unrecog@*/
     sb = NULL;
     s = se = ftpBuf;
     while ((c = *se) != '\0') {
@@ -1221,40 +1139,36 @@ fprintf(stderr, "*** ftpOpendir(%s)\n", path);
        switch (c) {
        case '/':
            sb = se;
-           /*@switchbreak@*/ break;
+           break;
        case '\r':
-           /*@-dependenttrans@*/
            av[ac] = t;
-           /*@=dependenttrans@*/
            if (sb == NULL) {
-               /*@-unrecog@*/
                switch(*s) {
                case 'p':
                    dt[ac] = DT_FIFO;
-                   /*@innerbreak@*/ break;
+                   break;
                case 'c':
                    dt[ac] = DT_CHR;
-                   /*@innerbreak@*/ break;
+                   break;
                case 'd':
                    dt[ac] = DT_DIR;
-                   /*@innerbreak@*/ break;
+                   break;
                case 'b':
                    dt[ac] = DT_BLK;
-                   /*@innerbreak@*/ break;
+                   break;
                case '-':
                    dt[ac] = DT_REG;
-                   /*@innerbreak@*/ break;
+                   break;
                case 'l':
                    dt[ac] = DT_LNK;
-                   /*@innerbreak@*/ break;
+                   break;
                case 's':
                    dt[ac] = DT_SOCK;
-                   /*@innerbreak@*/ break;
+                   break;
                default:
                    dt[ac] = DT_UNKNOWN;
-                   /*@innerbreak@*/ break;
+                   break;
                }
-               /*@=unrecog@*/
                for (sb = se; sb > s && sb[-1] != ' '; sb--)
                    {};
            }
@@ -1264,18 +1178,15 @@ fprintf(stderr, "*** ftpOpendir(%s)\n", path);
            if (*se == '\n') se++;
            sb = NULL;
            s = se;
-           /*@switchbreak@*/ break;
+           break;
        default:
-           /*@switchbreak@*/ break;
+           break;
        }
     }
     av[ac] = NULL;
 
-/*@-kepttrans@*/
     return (DIR *) avdir;
-/*@=kepttrans@*/
 }
-/*@=boundswrite@*/
 
 int Stat(const char * path, struct stat * st)
 {
@@ -1287,23 +1198,22 @@ fprintf(stderr, "*** Stat(%s,%p)\n", path, st);
     switch (ut) {
     case URL_IS_FTP:
        return ftpStat(path, st);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef WITH_NEON
        return davStat(path, st);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return stat(path, st);
 }
@@ -1318,23 +1228,22 @@ fprintf(stderr, "*** Lstat(%s,%p)\n", path, st);
     switch (ut) {
     case URL_IS_FTP:
        return ftpLstat(path, st);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef WITH_NEON
        return davLstat(path, st);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return lstat(path, st);
 }
@@ -1347,7 +1256,7 @@ int Readlink(const char * path, char * buf, size_t bufsiz)
     switch (ut) {
     case URL_IS_FTP:
        return ftpReadlink(path, buf, bufsiz);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS:
     case URL_IS_HTTP:
 #ifdef NOTYET
@@ -1355,21 +1264,19 @@ int Readlink(const char * path, char * buf, size_t bufsiz)
 #else
        return -2;
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
-/*@-compdef@*/ /* FIX: *buf is undefined */
+/* FIX: *buf is undefined */
     return readlink(path, buf, bufsiz);
-/*@=compdef@*/
 }
 
 int Access(const char * path, int amode)
@@ -1385,14 +1292,13 @@ fprintf(stderr, "*** Access(%s,%d)\n", path, amode);
     case URL_IS_FTP:           /* XXX WRONG WRONG WRONG */
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return access(path, amode);
 }
@@ -1438,7 +1344,7 @@ int Glob_pattern_p (const char * pattern, int quote)
     return (0);
 }
 
-int Glob_error(/*@unused@*/const char * epath, /*@unused@*/ int eerrno)
+int Glob_error(/*@unused@*/const char * epath, int eerrno)
 {
     return 1;
 }
@@ -1449,34 +1355,29 @@ int Glob(const char *pattern, int flags,
     const char * lpath;
     int ut = urlPath(pattern, &lpath);
 
-/*@-castfcnptr@*/
 if (_rpmio_debug)
 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 = (void *) Closedir;
        pglob->gl_readdir = (void *) Readdir;
        pglob->gl_opendir = (void *) Opendir;
        pglob->gl_lstat = Lstat;
        pglob->gl_stat = Stat;
-/*@=type@*/
        flags |= GLOB_ALTDIRFUNC;
        flags &= ~GLOB_TILDE;
        break;
     case URL_IS_PATH:
        pattern = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return -2;
-       /*@notreached@*/ break;
+       break;
     }
     return glob(pattern, flags, errfunc, pglob);
 }
@@ -1498,27 +1399,24 @@ fprintf(stderr, "*** Opendir(%s)\n", path);
     switch (ut) {
     case URL_IS_FTP:
        return ftpOpendir(path);
-       /*@notreached@*/ break;
+       break;
     case URL_IS_HTTPS: 
     case URL_IS_HTTP:
 #ifdef WITH_NEON
        return davOpendir(path);
 #endif
-       /*@notreached@*/ break;
+       break;
     case URL_IS_PATH:
        path = lpath;
-       /*@fallthrough@*/
     case URL_IS_UNKNOWN:
        break;
     case URL_IS_DASH:
     case URL_IS_HKP:
     default:
        return NULL;
-       /*@notreached@*/ break;
+       break;
     }
-    /*@-dependenttrans@*/
     return opendir(path);
-    /*@=dependenttrans@*/
 }
 
 struct dirent * Readdir(DIR * dir)
index 736e2c9..2ddbe6c 100644 (file)
 #endif
 
 #ifndef PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP
-/*@unchecked@*/
 static pthread_mutex_t rpmsigTbl_lock = PTHREAD_MUTEX_INITIALIZER;
 #else
-/*@unchecked@*/
-/*@-type@*/
 static pthread_mutex_t rpmsigTbl_lock = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
-/*@=type@*/
 #endif
 
 #define        DO_LOCK()       pthread_mutex_lock(&rpmsigTbl_lock);
@@ -56,8 +52,8 @@ static pthread_mutex_t rpmsigTbl_lock = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
 #define        DO_LOCK()
 #define        DO_UNLOCK()
 #define        INIT_LOCK()
-#define        ADD_REF(__tbl)  /*@-noeffect@*/ (0) /*@=noeffect@*/
-#define        SUB_REF(__tbl)  /*@-noeffect@*/ (0) /*@=noeffect@*/
+#define        ADD_REF(__tbl)  (0)
+#define        SUB_REF(__tbl)  (0)
 #define        CLEANUP_HANDLER(__handler, __arg, __oldtypeptr)
 #define        CLEANUP_RESET(__execute, __oldtype)
 
@@ -72,16 +68,11 @@ static pthread_mutex_t rpmsigTbl_lock = PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP;
 #include "debug.h"
 
 #define        _RPMSQ_DEBUG    0
-/*@unchecked@*/
 int _rpmsq_debug = _RPMSQ_DEBUG;
 
-/*@unchecked@*/
 static struct rpmsqElem rpmsqRock;
 
-/*@-compmempass@*/
-/*@unchecked@*/
 rpmsq rpmsqQueue = &rpmsqRock;
-/*@=compmempass@*/
 
 int rpmsqInsert(void * elem, void * prev)
 {
@@ -99,9 +90,7 @@ fprintf(stderr, "    Insert(%p): %p\n", ME(), sq);
            sq->reaped = 0;
            sq->status = 0;
            sq->reaper = 1;
-/*@-bounds@*/
            sq->pipes[0] = sq->pipes[1] = -1;
-/*@=bounds@*/
 
            sq->id = ME();
            ret = pthread_mutex_init(&sq->mutex, NULL);
@@ -132,11 +121,9 @@ fprintf(stderr, "    Remove(%p): %p\n", ME(), sq);
                ret = pthread_mutex_destroy(&sq->mutex);
 
            sq->id = NULL;
-/*@-bounds@*/
            if (sq->pipes[1])   ret = close(sq->pipes[1]);
            if (sq->pipes[0])   ret = close(sq->pipes[0]);
            sq->pipes[0] = sq->pipes[1] = -1;
-/*@=bounds@*/
 #ifdef NOTYET  /* rpmpsmWait debugging message needs */
            sq->reaper = 1;
            sq->status = 0;
@@ -149,11 +136,8 @@ fprintf(stderr, "    Remove(%p): %p\n", ME(), sq);
     return ret;
 }
 
-/*@unchecked@*/
 sigset_t rpmsqCaught;
 
-/*@unchecked@*/
-/*@-fullinitblock@*/
 static struct rpmsig_s {
     int signum;
     void (*handler) (int signum, void * info, void * context);
@@ -174,10 +158,9 @@ static struct rpmsig_s {
 #define        rpmsigTbl_sigpipe       (&rpmsigTbl[5])
     { -1,      NULL },
 };
-/*@=fullinitblock@*/
 
 void rpmsqAction(int signum,
-               /*@unused@*/ void * info, /*@unused@*/ void * context)
+               void * info, void * context)
 {
     int save = errno;
     rpmsig tbl;
@@ -197,7 +180,7 @@ void rpmsqAction(int signum,
 
                /* XXX errno set to ECHILD/EINVAL/EINTR. */
                if (reaped <= 0)
-                   /*@innerbreak@*/ break;
+                   break;
 
                /* XXX insque(3)/remque(3) are dequeue, not ring. */
                for (sq = rpmsqQueue->q_forw;
@@ -207,7 +190,7 @@ void rpmsqAction(int signum,
                    int ret;
 
                    if (sq->child != reaped)
-                       /*@innercontinue@*/ continue;
+                       continue;
                    sq->reaped = reaped;
                    sq->status = status;
 
@@ -218,21 +201,19 @@ void rpmsqAction(int signum,
                     */
                    ret = pthread_mutex_unlock(&sq->mutex); 
 
-                   /*@innerbreak@*/ break;
+                   break;
                }
            }
-           /*@switchbreak@*/ break;
+           break;
        default:
-           /*@switchbreak@*/ break;
+           break;
        }
        break;
     }
     errno = save;
 }
 
-int rpmsqEnable(int signum, /*@null@*/ rpmsqAction_t handler)
-       /*@globals rpmsigTbl @*/
-       /*@modifies rpmsigTbl @*/
+int rpmsqEnable(int signum, rpmsqAction_t handler)
 {
     int tblsignum = (signum >= 0 ? signum : -signum);
     struct sigaction sa;
@@ -309,11 +290,9 @@ fprintf(stderr, "    Enable(%p): %p\n", ME(), sq);
     if (!nothreads) {
        if(pthread_mutex_lock(&sq->mutex)) {
            /* Yack we did not get the lock, lets just give up */
-/*@-bounds@*/
            xx = close(sq->pipes[0]);
            xx = close(sq->pipes[1]);
            sq->pipes[0] = sq->pipes[1] = -1;
-/*@=bounds@*/
            goto out;
        }
     }
@@ -321,22 +300,18 @@ fprintf(stderr, "    Enable(%p): %p\n", ME(), sq);
     pid = fork();
     if (pid < (pid_t) 0) {             /* fork failed.  */
        sq->child = (pid_t)-1;
-/*@-bounds@*/
        xx = close(sq->pipes[0]);
        xx = close(sq->pipes[1]);
        sq->pipes[0] = sq->pipes[1] = -1;
-/*@=bounds@*/
        goto out;
     } else if (pid == (pid_t) 0) {     /* Child. */
        int yy;
 
        /* Block to permit parent time to wait. */
-/*@-bounds@*/
        xx = close(sq->pipes[1]);
        xx = read(sq->pipes[0], &yy, sizeof(yy));
        xx = close(sq->pipes[0]);
        sq->pipes[0] = sq->pipes[1] = -1;
-/*@=bounds@*/
 
 #ifdef _RPMSQ_DEBUG
 if (_rpmsq_debug)
@@ -366,8 +341,6 @@ out:
  * @return             0 on success
  */
 static int rpmsqWaitUnregister(rpmsq sq)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies sq, fileSystem, internalState @*/
 {
     int nothreads = 0;
     int ret = 0;
@@ -377,19 +350,16 @@ static int rpmsqWaitUnregister(rpmsq sq)
     ret = sighold(SIGCHLD);
 
     /* Start the child, linux often runs child before parent. */
-/*@-bounds@*/
     if (sq->pipes[0] >= 0)
        xx = close(sq->pipes[0]);
     if (sq->pipes[1] >= 0)
        xx = close(sq->pipes[1]);
     sq->pipes[0] = sq->pipes[1] = -1;
-/*@=bounds@*/
 
     /* Put a stopwatch on the time spent waiting to measure performance gain. */
     (void) rpmswEnter(&sq->op, -1);
 
     /* Wait for handler to receive SIGCHLD. */
-    /*@-infloops@*/
     while (ret == 0 && sq->reaped != sq->child) {
        if (nothreads)
            /* Note that sigpause re-enables SIGCHLD. */
@@ -406,7 +376,6 @@ static int rpmsqWaitUnregister(rpmsq sq)
            xx = sighold(SIGCHLD);
        }
     }
-    /*@=infloops@*/
 
     /* Accumulate stopwatch time spent waiting, potential performance gain. */
     sq->ms_scriptlets += rpmswExit(&sq->op, -1)/1000;
@@ -492,8 +461,6 @@ int rpmsqThreadEqual(void * thread)
  */
 static void
 sigchld_cancel (void *arg)
-       /*@globals rpmsigTbl, fileSystem, internalState @*/
-       /*@modifies rpmsigTbl, fileSystem, internalState @*/
 {
     pid_t child = *(pid_t *) arg;
     pid_t result;
@@ -517,8 +484,6 @@ sigchld_cancel (void *arg)
  */
 int
 rpmsqExecve (const char ** argv)
-       /*@globals rpmsigTbl @*/
-       /*@modifies rpmsigTbl @*/
 {
     int oldtype;
     int status = -1;
index f1ba5d4..86ee8b8 100644 (file)
@@ -22,13 +22,9 @@ typedef struct rpmsqElem * rpmsq;
  * @param info         (siginfo_t) signal info
  * @param context      signal context
  */
-typedef void (*rpmsqAction_t) (int signum, void * info, void * context)
-       /*@*/;
+typedef void (*rpmsqAction_t) (int signum, void * info, void * context);
 
-/*@-redecl@*/
-/*@unchecked@*/
 extern int _rpmsq_debug;
-/*@=redecl@*/
 
 /**
  * SIGCHLD queue element.
@@ -43,18 +39,13 @@ struct rpmsqElem {
     rpmtime_t ms_scriptlets;   /*!< Accumulated script duration (msecs). */
     int reaper;                        /*!< Register SIGCHLD handler? */
     int pipes[2];              /*!< Parent/child interlock. */
-/*@shared@*/
     void * id;                 /*!< Blocking thread id (pthread_t). */
     pthread_mutex_t mutex;     /*!< Signal delivery to thread condvar. */
     pthread_cond_t cond;
 };
 
-/*@-exportlocal@*/
-/*@unchecked@*/
 extern rpmsq rpmsqQueue;
-/*@=exportlocal@*/
 
-/*@unchecked@*/
 extern sigset_t rpmsqCaught;
 
 #ifdef __cplusplus
@@ -67,22 +58,14 @@ extern "C" {
  * @param prev         previous node from queue
  * @return             0 on success
  */
-/*@-exportlocal@*/
-int rpmsqInsert(/*@null@*/ void * elem, /*@null@*/ void * prev)
-       /*@globals systemState @*/
-       /*@modifies elem, prev, systemState @*/;
-/*@=exportlocal@*/
+int rpmsqInsert(void * elem, void * prev);
 
 /**
  * Remove node from queue.
  * @param elem         node to link
  * @return             0 on success
  */
-/*@-exportlocal@*/
-int rpmsqRemove(/*@null@*/ void * elem)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies elem, fileSystem, internalState @*/;
-/*@=exportlocal@*/
+int rpmsqRemove(void * elem);
 
 /**
  * Default signal handler.
@@ -90,11 +73,7 @@ int rpmsqRemove(/*@null@*/ void * elem)
  * @param info         (siginfo_t) signal info
  * @param context      signal context
  */
-/*@-exportlocal@*/
-void rpmsqAction(int signum, void * info, void * context)
-       /*@globals rpmsqCaught, rpmsqQueue, errno, fileSystem @*/
-       /*@modifies rpmsqCaught, rpmsqQueue, errno, fileSystem @*/;
-/*@=exportlocal@*/
+void rpmsqAction(int signum, void * info, void * context);
 
 /**
  * Enable or disable a signal handler.
@@ -102,27 +81,21 @@ void rpmsqAction(int signum, void * info, void * context)
  * @param handler      sa_sigaction handler (or NULL to use rpmsqHandler())
  * @return             no. of refs, -1 on error
  */
-int rpmsqEnable(int signum, /*@null@*/ rpmsqAction_t handler)
-       /*@globals rpmsqCaught, rpmsqQueue, fileSystem, internalState @*/
-       /*@modifies rpmsqCaught, rpmsqQueue, fileSystem, internalState @*/;
+int rpmsqEnable(int signum, rpmsqAction_t handler);
 
 /**
  * Fork a child process.
  * @param sq           scriptlet queue element
  * @return             fork(2) pid
  */
-pid_t rpmsqFork(rpmsq sq)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies sq, fileSystem, internalState @*/;
+pid_t rpmsqFork(rpmsq sq);
 
 /**
  * Wait for child process to be reaped.
  * @param sq           scriptlet queue element
  * @return             reaped child pid
  */
-pid_t rpmsqWait(rpmsq sq)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies sq, fileSystem, internalState @*/;
+pid_t rpmsqWait(rpmsq sq);
 
 /**
  * Call a function in a thread.
@@ -130,34 +103,26 @@ pid_t rpmsqWait(rpmsq sq)
  * @param arg          function argument
  * @return             thread pointer (NULL on error)
  */
-void * rpmsqThread(void * (*start) (void * arg), void * arg)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/;
+void * rpmsqThread(void * (*start) (void * arg), void * arg);
 
 /**
  * Wait for thread to terminate.
  * @param thread       thread
  * @return             0 on success
  */
-int rpmsqJoin(/*@null@*/ void * thread)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/;
+int rpmsqJoin(void * thread);
 
 /**
  * Compare thread with current thread.
  * @param thread       thread
  * @return             0 if not equal
  */
-int rpmsqThreadEqual(/*@null@*/ void * thread)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/;
+int rpmsqThreadEqual(void * thread);
 
 /**
  * Execute a command, returning its status.
  */
-int rpmsqExecve (const char ** argv)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int rpmsqExecve (const char ** argv);
 
 #ifdef __cplusplus
 }
index 52e3f63..b4005c5 100644 (file)
@@ -6,16 +6,12 @@
 #include <rpmsw.h>
 #include "debug.h"
 
-/*@unchecked@*/
 static rpmtime_t rpmsw_overhead = 0;
 
-/*@unchecked@*/
 static rpmtime_t rpmsw_cycles = 1;
 
-/*@unchecked@*/
 static int rpmsw_type = 0;
 
-/*@unchecked@*/
 static int rpmsw_initialized = 0;
 
 #if defined(__i386__)
@@ -95,9 +91,8 @@ rpmsw rpmswNow(rpmsw sw)
  * @return             difference in milli-seconds
  */
 static inline
-rpmtime_t tvsub(/*@null@*/ const struct timeval * etv,
-               /*@null@*/ const struct timeval * btv)
-       /*@*/
+rpmtime_t tvsub(const struct timeval * etv,
+               const struct timeval * btv)
 {
     time_t secs, usecs;
     if (etv == NULL  || btv == NULL) return 0;
@@ -134,8 +129,6 @@ rpmtime_t rpmswDiff(rpmsw end, rpmsw begin)
 
 #if defined(HP_TIMING_NOW)
 static rpmtime_t rpmswCalibrate(void)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/
 {
     struct rpmsw_s begin, end;
     rpmtime_t ticks;
@@ -143,9 +136,7 @@ static rpmtime_t rpmswCalibrate(void)
     int rc;
     int i;
 
-/*@-uniondef@*/
     (void) rpmswNow(&begin);
-/*@=uniondef@*/
     req.tv_sec = 0;
     req.tv_nsec = 20 * 1000 * 1000;
     for (i = 0; i < 100; i++) {
@@ -156,9 +147,7 @@ static rpmtime_t rpmswCalibrate(void)
            break;
        req = rem;      /* structure assignment */
     }
-/*@-uniondef@*/
     ticks = rpmswDiff(rpmswNow(&end), &begin);
-/*@=uniondef@*/
 
     return ticks;
 }
@@ -194,9 +183,7 @@ rpmtime_t rpmswInit(void)
 
        /* Start wall clock. */
        rpmsw_type = 0;
-/*@-uniondef@*/
        (void) rpmswNow(&begin);
-/*@=uniondef@*/
 
        /* Get no. of cycles while doing nanosleep. */
        rpmsw_type = 1;
@@ -207,9 +194,7 @@ rpmtime_t rpmswInit(void)
 
        /* Compute wall clock delta in usecs. */
        rpmsw_type = 0;
-/*@-uniondef@*/
        sum_usecs += rpmswDiff(rpmswNow(&end), &begin);
-/*@=uniondef@*/
        rpmsw_type = 1;
 
        /* Compute cycles/usec */
@@ -219,10 +204,8 @@ rpmtime_t rpmswInit(void)
 #endif
 
        /* Calculate timing overhead in usecs. */
-/*@-uniondef@*/
        (void) rpmswNow(&begin);
        sum_overhead += rpmswDiff(rpmswNow(&end), &begin);
-/*@=uniondef@*/
 
        rpmsw_overhead = sum_overhead/(i+1);
 
@@ -241,9 +224,7 @@ int rpmswEnter(rpmop op, ssize_t rc)
        op->bytes = 0;
        op->usecs = 0;
     }
-/*@-uniondef@*/
     (void) rpmswNow(&op->begin);
-/*@=uniondef@*/
     return 0;
 }
 
@@ -254,9 +235,7 @@ rpmtime_t rpmswExit(rpmop op, ssize_t rc)
     if (op == NULL)
        return 0;
 
-/*@-uniondef@*/
     op->usecs += rpmswDiff(rpmswNow(&end), &op->begin);
-/*@=uniondef@*/
     if (rc > 0)
        op->bytes += rc;
     op->begin = end;   /* structure assignment */
index 9a76af9..0ece223 100644 (file)
@@ -45,31 +45,19 @@ extern "C" {
  * @param *sw          time stamp
  * @return             0 on success
  */
-/*@-exportlocal@*/
-/*@null@*/
-rpmsw rpmswNow(/*@returned@*/ rpmsw sw)
-       /*@globals internalState @*/
-       /*@modifies sw, internalState @*/;
-/*@=exportlocal@*/
+rpmsw rpmswNow(rpmsw sw);
 
 /** Return benchmark time stamp difference.
  * @param *end         end time stamp
  * @param *begin       begin time stamp
  * @return             difference in micro-seconds
  */
-/*@-exportlocal@*/
-rpmtime_t rpmswDiff(/*@null@*/ rpmsw end, /*@null@*/ rpmsw begin)
-       /*@*/;
-/*@=exportlocal@*/
+rpmtime_t rpmswDiff(rpmsw end, rpmsw begin);
 
 /** Return benchmark time stamp overhead.
  * @return             overhead in micro-seconds
  */
-/*@-exportlocal@*/
-rpmtime_t rpmswInit(void)
-       /*@globals internalState @*/
-       /*@modifies internalState @*/;
-/*@=exportlocal@*/
+rpmtime_t rpmswInit(void);
 
 /** \ingroup rpmio
  * Enter timed operation.
@@ -77,9 +65,7 @@ rpmtime_t rpmswInit(void)
  * @param rc                   -1 clears usec counter
  * @return                     0 always
  */
-int rpmswEnter(/*@null@*/ rpmop op, ssize_t rc)
-       /*@globals internalState @*/
-       /*@modifies *op, internalState @*/;
+int rpmswEnter(rpmop op, ssize_t rc);
 
 /** \ingroup rpmio
  * Exit timed operation.
@@ -87,9 +73,7 @@ int rpmswEnter(/*@null@*/ rpmop op, ssize_t rc)
  * @param rc                   per-operation data (e.g. bytes transferred)
  * @return                     cumulative usecs for operation
  */
-rpmtime_t rpmswExit(/*@null@*/ rpmop op, ssize_t rc)
-       /*@globals internalState @*/
-       /*@modifies op, internalState @*/;
+rpmtime_t rpmswExit(rpmop op, ssize_t rc);
 
 /** \ingroup rpmio
  * Sum statistic counters.
@@ -97,8 +81,7 @@ rpmtime_t rpmswExit(/*@null@*/ rpmop op, ssize_t rc)
  * @param from                 operation statistics
  * @return                     cumulative usecs for operation
  */
-rpmtime_t rpmswAdd(/*@null@*/ rpmop to, /*@null@*/ rpmop from)
-       /*@modifies to @*/;
+rpmtime_t rpmswAdd(rpmop to, rpmop from);
 
 /** \ingroup rpmio
  * Subtract statistic counters.
@@ -106,8 +89,7 @@ rpmtime_t rpmswAdd(/*@null@*/ rpmop to, /*@null@*/ rpmop from)
  * @param from                 operation statistics
  * @return                     cumulative usecs for operation
  */
-rpmtime_t rpmswSub(rpmop to, rpmop from)
-       /*@modifies to @*/;
+rpmtime_t rpmswSub(rpmop to, rpmop from);
 
 #ifdef __cplusplus
 }
index 4b02a21..d100636 100644 (file)
@@ -23,28 +23,20 @@ typedef enum urltype_e {
 #define        URLMAGIC        0xd00b1ed0
 #define        URLSANE(u)      assert(u && u->magic == URLMAGIC)
 
-typedef /*@abstract@*/ /*@refcounted@*/ struct urlinfo_s * urlinfo;
+typedef struct urlinfo_s * urlinfo;
 
 /**
  * URL control structure.
  */
 struct urlinfo_s {
-/*@refs@*/ int nrefs;          /*!< no. of references */
-/*@owned@*/ /*@relnull@*/
+int nrefs;             /*!< no. of references */
     const char * url;          /*!< copy of original url */
-/*@owned@*/ /*@relnull@*/
     const char * scheme;       /*!< URI scheme. */
-/*@owned@*/ /*@null@*/
     const char * user;         /*!< URI user. */
-/*@owned@*/ /*@null@*/
     const char * password;     /*!< URI password. */
-/*@owned@*/ /*@relnull@*/
     const char * host;         /*!< URI host. */
-/*@owned@*/ /*@null@*/
     const char * portstr;      /*!< URI port string. */
-/*@owned@*/ /*@null@*/
     const char * proxyu;       /*!< FTP: proxy user */
-/*@owned@*/ /*@null@*/
     const char * proxyh;       /*!< FTP/HTTP: proxy host */
     int proxyp;                        /*!< FTP/HTTP: proxy port */
     int        port;                   /*!< URI port. */
@@ -52,11 +44,8 @@ struct urlinfo_s {
     FD_t ctrl;                 /*!< control channel */
     FD_t data;                 /*!< per-xfer data channel */
 
-/*@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. */
@@ -71,7 +60,6 @@ typedef enum {
 #endif
 
     int bufAlloced;            /*!< sizeof I/O buffer */
-/*@owned@*/
     char * buf;                        /*!< I/O buffer */
     int openError;             /*!< Type of open failure */
     int httpVersion;
@@ -83,18 +71,13 @@ typedef enum {
 extern "C" {
 #endif
 
-/*@unchecked@*/
 extern int _url_count;         /*!< No. of cached URL's. */
 
-/*@unchecked@*/
-/*@only@*/ /*@null@*/
 extern urlinfo * _url_cache;   /*!< URL cache. */
 
-/*@unchecked@*/
 extern int _url_iobuf_size;    /*!< Initial size of URL I/O buffer. */
 #define RPMURL_IOBUF_SIZE      4096
 
-/*@unchecked@*/
 extern int _url_debug;         /*!< URL debugging? */
 #define RPMURL_DEBUG_IO                0x40000000
 #define RPMURL_DEBUG_REFS      0x20000000
@@ -105,10 +88,10 @@ extern int _url_debug;             /*!< URL debugging? */
  * @param msg          debugging identifier (unused)
  * @return             new instance
  */
-/*@unused@*/ urlinfo   urlNew(const char * msg)        /*@*/;
+urlinfo        urlNew(const char * msg)        ;
 
 /** @todo Remove debugging entry from the ABI. */
-urlinfo        XurlNew(const char * msg, const char * file, unsigned line)     /*@*/;
+urlinfo        XurlNew(const char * msg, const char * file, unsigned line)     ;
 #define        urlNew(_msg) XurlNew(_msg, __FILE__, __LINE__)
 
 /**
@@ -117,12 +100,10 @@ urlinfo   XurlNew(const char * msg, const char * file, unsigned line)     /*@*/;
  * @param msg          debugging identifier (unused)
  * @return             referenced instance
  */
-/*@unused@*/ urlinfo   urlLink(urlinfo u, const char * msg)
-       /*@modifies u @*/;
+urlinfo        urlLink(urlinfo u, const char * msg);
 
 /** @todo Remove debugging entry from the ABI. */
-urlinfo        XurlLink(urlinfo u, const char * msg, const char * file, unsigned line)
-       /*@modifies u @*/;
+urlinfo        XurlLink(urlinfo u, const char * msg, const char * file, unsigned line);
 #define        urlLink(_u, _msg) XurlLink(_u, _msg, __FILE__, __LINE__)
 
 /**
@@ -131,31 +112,24 @@ urlinfo   XurlLink(urlinfo u, const char * msg, const char * file, unsigned line)
  * @param msg          debugging identifier (unused)
  * @return             dereferenced instance (NULL if freed)
  */
-/*@unused@*/ urlinfo   urlFree( /*@killref@*/ urlinfo u, const char * msg)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies u, fileSystem, internalState @*/;
+urlinfo        urlFree( urlinfo u, const char * msg);
 
 /** @todo Remove debugging entry from the ABI. */
-urlinfo        XurlFree( /*@killref@*/ urlinfo u, const char * msg,
-               const char * file, unsigned line)
-       /*@globals fileSystem, internalState @*/
-       /*@modifies u, fileSystem, internalState @*/;
+urlinfo        XurlFree( urlinfo u, const char * msg,
+               const char * file, unsigned line);
 #define        urlFree(_u, _msg) XurlFree(_u, _msg, __FILE__, __LINE__)
 
 /**
  * Free cached URL control structures.
  */
-void urlFreeCache(void)
-       /*@globals _url_cache, _url_count, fileSystem, internalState @*/
-       /*@modifies _url_cache, _url_count, fileSystem, internalState @*/;
+void urlFreeCache(void);
 
 /**
  * Return type of URL.
  * @param url          url string
  * @return             type of url
  */
-urltype        urlIsURL(const char * url)
-       /*@*/;
+urltype        urlIsURL(const char * url);
 
 /**
  * Return path component of URL.
@@ -163,11 +137,7 @@ urltype    urlIsURL(const char * url)
  * @retval pathp       pointer to path component of url
  * @return             type of url
  */
-/*@-incondefs@*/
-urltype        urlPath(const char * url, /*@out@*/ const char ** pathp)
-       /*@ensures maxSet(*pathp) == 0 /\ maxRead(*pathp) == 0 @*/
-       /*@modifies *pathp @*/;
-/*@=incondefs@*/
+urltype        urlPath(const char * url, const char ** pathp);
 
 /**
  * Parse URL string into a control structure.
@@ -175,9 +145,7 @@ urltype     urlPath(const char * url, /*@out@*/ const char ** pathp)
  * @retval uret                address of new control instance pointer
  * @return             0 on success, -1 on error
  */
-int urlSplit(const char * url, /*@out@*/ urlinfo * uret)
-       /*@globals h_errno, internalState @*/
-       /*@modifies *uret, internalState @*/;
+int urlSplit(const char * url, urlinfo * uret);
 
 /**
  * Copy data from URL to local file.
@@ -185,9 +153,7 @@ int urlSplit(const char * url, /*@out@*/ urlinfo * uret)
  * @param dest         file name of destination
  * @return             0 on success, otherwise FTPERR_* code
  */
-int urlGetFile(const char * url, /*@null@*/ const char * dest)
-       /*@globals h_errno, fileSystem, internalState @*/
-       /*@modifies fileSystem, internalState @*/;
+int urlGetFile(const char * url, const char * dest);
 
 #ifdef __cplusplus
 }
index 7743650..669522b 100644 (file)
@@ -17,10 +17,8 @@ int xstrcasecmp(const char * s1, const char * s2)
 
   do
     {
-/*@-boundsread@*/
       c1 = xtolower (*p1++);
       c2 = xtolower (*p2++);
-/*@=boundsread@*/
       if (c1 == '\0')
         break;
     }
@@ -40,10 +38,8 @@ int xstrncasecmp(const char *s1, const char *s2, size_t n)
 
   do
     {
-/*@-boundsread@*/
       c1 = xtolower (*p1++);
       c2 = xtolower (*p2++);
-/*@=boundsread@*/
       if (c1 == '\0' || c1 != c2)
        break;
     } while (--n > 0);
index ee2679b..9c2f5a9 100644 (file)
@@ -40,12 +40,10 @@ AjjDx3lJnQBXUDmxM484YXLXZjWFXCiY8GJt6whjf7/2c3rIoT3Z7PQpEvPmM\
  * @param nbytes       no. of bytes
  * @return             target buffer
  */
-/*@unused@*/ static inline
-char * pgpHexCvt(/*@returned@*/ char *t, const byte *s, int nbytes)
-       /*@modifies *t @*/
+static inline
+char * pgpHexCvt(char *t, const byte *s, int nbytes)
 {
     static char hex[] = "0123456789abcdef";
-/*@-boundswrite@*/
     while (nbytes-- > 0) {
        unsigned int i;
        i = *s++;
@@ -53,7 +51,6 @@ char * pgpHexCvt(/*@returned@*/ char *t, const byte *s, int nbytes)
        *t++ = hex[ (i     ) & 0xf ];
     }
     *t = '\0';
-/*@=boundswrite@*/
     return t;
 }
 
@@ -64,9 +61,8 @@ char * pgpHexCvt(/*@returned@*/ char *t, const byte *s, int nbytes)
  * @param plen         no. of bytes
  * @return             hex formatted string
  */
-/*@unused@*/ static inline /*@observer@*/
+static inline
 char * pgpHexStr(const byte *p, unsigned int plen)
-       /*@*/
 {
     static char prbuf[2048];
     char *t = prbuf;
index d8a79aa..e909aff 100644 (file)
@@ -60,9 +60,9 @@ main(int argc, const char *argv[])
        switch (rc) {
        case 'v':
            rpmIncreaseVerbosity();
-           /*@switchbreak@*/ break;
+           break;
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
@@ -78,7 +78,7 @@ _dav_debug = -1;
     printDir(ftppath);
     printDir(httppath);
 
-/*@i@*/ urlFreeCache();
+urlFreeCache();
 
     return 0;
 }
index c74b915..6a1ecbf 100644 (file)
@@ -8,7 +8,6 @@
 
 #include "debug.h"
 
-/*@unchecked@*/
 static int _fts_debug = 0;
 
 #if 0
@@ -153,9 +152,9 @@ main(int argc, const char *argv[])
        switch (rc) {
        case 'v':
            rpmIncreaseVerbosity();
-           /*@switchbreak@*/ break;
+           break;
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
@@ -174,7 +173,7 @@ _dav_debug = 1;
     ftsWalk(httpspath);
 #endif
 
-/*@i@*/ urlFreeCache();
+urlFreeCache();
 
     return 0;
 }
index 6ba4755..eb412e9 100644 (file)
@@ -61,9 +61,9 @@ main(int argc, const char *argv[])
        switch (rc) {
        case 'v':
            rpmIncreaseVerbosity();
-           /*@switchbreak@*/ break;
+           break;
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
@@ -94,7 +94,7 @@ _dav_debug = 1;
     readFile(httpspath);
 #endif
 
-/*@i@*/ urlFreeCache();
+urlFreeCache();
 
     return 0;
 }
index 55d20bb..b5554b0 100644 (file)
@@ -75,9 +75,9 @@ main(int argc, const char *argv[])
        switch (rc) {
        case 'v':
            rpmIncreaseVerbosity();
-           /*@switchbreak@*/ break;
+           break;
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
index 8cd7388..57fb4cf 100644 (file)
@@ -116,9 +116,9 @@ main(int argc, const char *argv[])
        switch (rc) {
        case 'v':
            rpmIncreaseVerbosity();
-           /*@switchbreak@*/ break;
+           break;
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
@@ -129,7 +129,7 @@ main(int argc, const char *argv[])
 
     readKeys(hkppath);
 
-/*@i@*/ urlFreeCache();
+urlFreeCache();
 
     return 0;
 }
index c5af504..1ba2800 100644 (file)
@@ -104,10 +104,8 @@ fprintf(stderr, "       D: "), mpfprintln(stderr, ysize, D);
 
        if (result) {
                mpsetx(b->size, result, ysize, A);
-               /*@-usedef@*/
                if (*A & 0x80000000)
                        (void) mpneg(b->size, result);
-               /*@=usedef@*/
                while (--k > 0)
                        mpadd(b->size, result, result);
        }
@@ -397,10 +395,8 @@ fprintf(stderr, "       D: "), mpfprintln(stderr, ysize, D);
        if (result)
        {
                mpsetx(b->size, result, ysize, D);
-               /*@-usedef@*/
                if (*D & 0x80000000)
                        (void) mpadd(b->size, result, b->modl);
-               /*@=usedef@*/
        }
 
 fprintf(stderr, "=== EXIT: "), mpfprintln(stderr, b->size, result);
@@ -477,7 +473,7 @@ main(int argc, const char * argv[])
     while ((rc = poptGetNextOpt(optCon)) > 0) {
        switch (rc) {
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
index e0c7b9c..244a6d7 100644 (file)
@@ -121,9 +121,9 @@ main(int argc, const char *argv[])
        switch (rc) {
        case 'v':
            rpmIncreaseVerbosity();
-           /*@switchbreak@*/ break;
+           break;
        default:
-            /*@switchbreak@*/ break;
+            break;
        }
     }
 
@@ -144,7 +144,7 @@ _dav_debug = -1;
     doFile(httpspath);
 #endif
 
-/*@i@*/ urlFreeCache();
+urlFreeCache();
 
     return 0;
 }
index 45b1f1c..7b3d313 100644 (file)
@@ -35,8 +35,7 @@ main (int argc, const char *argv[])
     const char * fn;
     int rc, ec = 0;
 
-    while ((rc = poptGetNextOpt(optCon)) > 0)
-       ;
+    while ((rc = poptGetNextOpt(optCon)) > 0);
 
     if ((args = poptGetArgs(optCon)) != NULL)
     while ((fn = *args++) != NULL) {
index b9a0898..fb84f74 100644 (file)
@@ -15,7 +15,7 @@
 
 int unameToUid(const char * thisUname, uid_t * uid)
 {
-/*@only@*/ static char * lastUname = NULL;
+static char * lastUname = NULL;
     static size_t lastUnameLen = 0;
     static size_t lastUnameAlloced;
     static uid_t lastUid;
@@ -26,9 +26,7 @@ int unameToUid(const char * thisUname, uid_t * uid)
        lastUnameLen = 0;
        return -1;
     } else if (strcmp(thisUname, "root") == 0) {
-/*@-boundswrite@*/
        *uid = 0;
-/*@=boundswrite@*/
        return 0;
     }
 
@@ -40,15 +38,12 @@ int unameToUid(const char * thisUname, uid_t * uid)
            lastUnameAlloced = thisUnameLen + 10;
            lastUname = xrealloc(lastUname, lastUnameAlloced);  /* XXX memory leak */
        }
-/*@-boundswrite@*/
        strcpy(lastUname, thisUname);
-/*@=boundswrite@*/
 
        pwent = getpwnam(thisUname);
        if (pwent == NULL) {
-           /*@-internalglobs@*/ /* FIX: shrug */
+           /* FIX: shrug */
            endpwent();
-           /*@=internalglobs@*/
            pwent = getpwnam(thisUname);
            if (pwent == NULL) return -1;
        }
@@ -56,16 +51,14 @@ int unameToUid(const char * thisUname, uid_t * uid)
        lastUid = pwent->pw_uid;
     }
 
-/*@-boundswrite@*/
     *uid = lastUid;
-/*@=boundswrite@*/
 
     return 0;
 }
 
 int gnameToGid(const char * thisGname, gid_t * gid)
 {
-/*@only@*/ static char * lastGname = NULL;
+static char * lastGname = NULL;
     static size_t lastGnameLen = 0;
     static size_t lastGnameAlloced;
     static gid_t lastGid;
@@ -76,9 +69,7 @@ int gnameToGid(const char * thisGname, gid_t * gid)
        lastGnameLen = 0;
        return -1;
     } else if (strcmp(thisGname, "root") == 0) {
-/*@-boundswrite@*/
        *gid = 0;
-/*@=boundswrite@*/
        return 0;
     }
 
@@ -90,28 +81,21 @@ int gnameToGid(const char * thisGname, gid_t * gid)
            lastGnameAlloced = thisGnameLen + 10;
            lastGname = xrealloc(lastGname, lastGnameAlloced);  /* XXX memory leak */
        }
-/*@-boundswrite@*/
        strcpy(lastGname, thisGname);
-/*@=boundswrite@*/
 
        grent = getgrnam(thisGname);
        if (grent == NULL) {
-           /*@-internalglobs@*/ /* FIX: shrug */
+           /* FIX: shrug */
            endgrent();
-           /*@=internalglobs@*/
            grent = getgrnam(thisGname);
            if (grent == NULL) {
                /* XXX The filesystem package needs group/lock w/o getgrnam. */
                if (strcmp(thisGname, "lock") == 0) {
-/*@-boundswrite@*/
                    *gid = lastGid = 54;
-/*@=boundswrite@*/
                    return 0;
                } else
                if (strcmp(thisGname, "mail") == 0) {
-/*@-boundswrite@*/
                    *gid = lastGid = 12;
-/*@=boundswrite@*/
                    return 0;
                } else
                return -1;
@@ -120,9 +104,7 @@ int gnameToGid(const char * thisGname, gid_t * gid)
        lastGid = grent->gr_gid;
     }
 
-/*@-boundswrite@*/
     *gid = lastGid;
-/*@=boundswrite@*/
 
     return 0;
 }
@@ -130,7 +112,7 @@ int gnameToGid(const char * thisGname, gid_t * gid)
 char * uidToUname(uid_t uid)
 {
     static uid_t lastUid = (uid_t) -1;
-/*@only@*/ static char * lastUname = NULL;
+static char * lastUname = NULL;
     static size_t lastUnameLen = 0;
 
     if (uid == (uid_t) -1) {
@@ -152,9 +134,7 @@ char * uidToUname(uid_t uid)
            lastUnameLen = len + 20;
            lastUname = xrealloc(lastUname, lastUnameLen);
        }
-/*@-boundswrite@*/
        strcpy(lastUname, pwent->pw_name);
-/*@=boundswrite@*/
 
        return lastUname;
     }
@@ -163,7 +143,7 @@ char * uidToUname(uid_t uid)
 char * gidToGname(gid_t gid)
 {
     static gid_t lastGid = (gid_t) -1;
-/*@only@*/ static char * lastGname = NULL;
+static char * lastGname = NULL;
     static size_t lastGnameLen = 0;
 
     if (gid == (gid_t) -1) {
@@ -185,9 +165,7 @@ char * gidToGname(gid_t gid)
            lastGnameLen = len + 20;
            lastGname = xrealloc(lastGname, lastGnameLen);
        }
-/*@-boundswrite@*/
        strcpy(lastGname, grent->gr_name);
-/*@=boundswrite@*/
 
        return lastGname;
     }
index b0b07ff..0ef5559 100644 (file)
@@ -13,19 +13,14 @@ extern "C" {
  * These may be called w/ a NULL argument to flush the cache -- they return
  * -1 if the user can't be found.
  */
-int     unameToUid(const char * thisUname, /*@out@*/ uid_t * uid)
-       /*@modifies *uid @*/;
-int     gnameToGid(const char * thisGname, /*@out@*/ gid_t * gid)
-       /*@modifies *gid @*/;
+int     unameToUid(const char * thisUname, uid_t * uid);
+int     gnameToGid(const char * thisGname, gid_t * gid);
 
 /*
  * Call w/ -1 to flush the cache, returns NULL if the user can't be found.
  */
-/*@observer@*/ /*@null@*/ char * uidToUname(uid_t uid)
-       /*@*/;
-/*@unused@*/
-/*@observer@*/ /*@null@*/ char * gidToGname(gid_t gid)
-       /*@*/;
+char * uidToUname(uid_t uid);
+char * gidToGname(gid_t gid);
 
 #ifdef __cplusplus
 }
index 3f947f5..43fc46d 100644 (file)
@@ -13,7 +13,6 @@
 #include "debug.h"
 
 /*@access FD_t@*/              /* XXX compared with NULL */
-/*@access urlinfo@*/
 
 #ifndef        IPPORT_FTP
 #define        IPPORT_FTP      21
 
 /**
  */
-/*@unchecked@*/
 int _url_iobuf_size = RPMURL_IOBUF_SIZE;
 
 /**
  */
-/*@unchecked@*/
 int _url_debug = 0;
 
 #define        URLDBG(_f, _m, _x)      if ((_url_debug | (_f)) & (_m)) fprintf _x
@@ -45,13 +42,10 @@ int _url_debug = 0;
 
 /**
  */
-/*@unchecked@*/
-/*@only@*/ /*@null@*/
 urlinfo *_url_cache = NULL;
 
 /**
  */
-/*@unchecked@*/
 int _url_count = 0;
 
 /**
@@ -59,8 +53,8 @@ int _url_count = 0;
  * @param p            memory to free
  * @retval             NULL always
  */
-/*@unused@*/ static inline /*@null@*/ void *
-_free(/*@only@*/ /*@null@*/ const void * p) /*@modifies p@*/
+static inline void *
+_free(const void * p)
 {
     if (p != NULL)     free((void *)p);
     return NULL;
@@ -70,10 +64,8 @@ urlinfo XurlLink(urlinfo u, const char *msg, const char *file, unsigned line)
 {
     URLSANE(u);
     u->nrefs++;
-/*@-modfilesys@*/
 URLDBGREFS(0, (stderr, "--> url %p ++ %d %s at %s:%u\n", u, u->nrefs, msg, file, line));
-/*@=modfilesys@*/
-    /*@-refcounttrans@*/ return u; /*@=refcounttrans@*/
+    return u;
 }
 
 urlinfo XurlNew(const char *msg, const char *file, unsigned line)
@@ -103,28 +95,24 @@ urlinfo XurlFree(urlinfo u, const char *msg, const char *file, unsigned line)
     URLSANE(u);
 URLDBGREFS(0, (stderr, "--> url %p -- %d %s at %s:%u\n", u, u->nrefs, msg, file, line));
     if (--u->nrefs > 0)
-       /*@-refcounttrans -retalias@*/ return u; /*@=refcounttrans =retalias@*/
+       return u;
     if (u->ctrl) {
 #ifndef        NOTYET
        void * fp = fdGetFp(u->ctrl);
-       /*@-branchstate@*/
        if (fp) {
            fdPush(u->ctrl, fpio, fp, -1);   /* Push fpio onto stack */
            (void) Fclose(u->ctrl);
        } else if (fdio->_fileno(u->ctrl) >= 0)
            xx = fdio->close(u->ctrl);
-       /*@=branchstate@*/
 #else
        (void) Fclose(u->ctrl);
 #endif
 
        u->ctrl = fdio->_fdderef(u->ctrl, "persist ctrl (urlFree)", file, line);
-       /*@-usereleased@*/
        if (u->ctrl)
            fprintf(stderr, _("warning: u %p ctrl %p nrefs != 0 (%s %s)\n"),
                        u, u->ctrl, (u->host ? u->host : ""),
                        (u->scheme ? u->scheme : ""));
-       /*@=usereleased@*/
     }
     if (u->data) {
 #ifndef        NOTYET
@@ -139,12 +127,10 @@ URLDBGREFS(0, (stderr, "--> url %p -- %d %s at %s:%u\n", u, u->nrefs, msg, file,
 #endif
 
        u->data = fdio->_fdderef(u->data, "persist data (urlFree)", file, line);
-       /*@-usereleased@*/
        if (u->data)
            fprintf(stderr, _("warning: u %p data %p nrefs != 0 (%s %s)\n"),
                        u, u->data, (u->host ? u->host : ""),
                        (u->scheme ? u->scheme : ""));
-       /*@=usereleased@*/
     }
     if (u->sess != NULL) {
 #ifdef WITH_NEON
@@ -163,11 +149,10 @@ URLDBGREFS(0, (stderr, "--> url %p -- %d %s at %s:%u\n", u, u->nrefs, msg, file,
     u->proxyu = _free((void *)u->proxyu);
     u->proxyh = _free((void *)u->proxyh);
 
-    /*@-refcounttrans@*/ u = _free(u); /*@-refcounttrans@*/
+    u = _free(u);
     return NULL;
 }
 
-/*@-boundswrite@*/
 void urlFreeCache(void)
 {
     if (_url_cache) {
@@ -186,10 +171,8 @@ void urlFreeCache(void)
     _url_cache = _free(_url_cache);
     _url_count = 0;
 }
-/*@=boundswrite@*/
 
-static int urlStrcmp(/*@null@*/ const char * str1, /*@null@*/ const char * str2)
-       /*@*/
+static int urlStrcmp(const char * str1, const char * str2)
 {
     if (str1)
        if (str2)
@@ -199,11 +182,7 @@ static int urlStrcmp(/*@null@*/ const char * str1, /*@null@*/ const char * str2)
     return 0;
 }
 
-/*@-boundswrite@*/
-/*@-mods@*/
-static void urlFind(/*@null@*/ /*@in@*/ /*@out@*/ urlinfo * uret, int mustAsk)
-       /*@globals rpmGlobalMacroContext, h_errno, fileSystem, internalState @*/
-       /*@modifies *uret, rpmGlobalMacroContext, fileSystem, internalState @*/
+static void urlFind(urlinfo * uret, int mustAsk)
 {
     urlinfo u;
     int ucx;
@@ -257,9 +236,7 @@ static void urlFind(/*@null@*/ /*@in@*/ /*@out@*/ urlinfo * uret, int mustAsk)
     if (_url_cache)            /* XXX always true */
        u = urlLink(_url_cache[ucx], "_url_cache");
     *uret = u;
-    /*@-usereleased@*/
     u = urlFree(u, "_url_cache (urlFind)");
-    /*@=usereleased@*/
 
     /* Zap proxy host and port in case they have been reset */
     u->proxyp = -1;
@@ -275,9 +252,7 @@ static void urlFind(/*@null@*/ /*@in@*/ /*@out@*/ urlinfo * uret, int mustAsk)
            prompt = alloca(strlen(host) + strlen(user) + 256);
            sprintf(prompt, _("Password for %s@%s: "), user, host);
            u->password = _free(u->password);
-/*@-dependenttrans -moduncon @*/
-           u->password = /*@-unrecog@*/ getpass(prompt) /*@=unrecog@*/;
-/*@=dependenttrans =moduncon @*/
+           u->password = getpass(prompt);
            if (u->password)
                u->password = xstrdup(u->password);
        }
@@ -285,7 +260,6 @@ static void urlFind(/*@null@*/ /*@in@*/ /*@out@*/ urlinfo * uret, int mustAsk)
        if (u->proxyh == NULL) {
            const char *proxy = rpmExpand("%{_ftpproxy}", NULL);
            if (proxy && *proxy != '%') {
-/*@observer@*/
                const char * host = (u->host ? u->host : "");
                const char *uu = (u->user ? u->user : "anonymous");
                char *nu = xmalloc(strlen(uu) + sizeof("@") + strlen(host));
@@ -341,14 +315,10 @@ static void urlFind(/*@null@*/ /*@in@*/ /*@out@*/ urlinfo * uret, int mustAsk)
 
     return;
 }
-/*@=mods@*/
-/*@=boundswrite@*/
 
 /**
  */
-/*@observer@*/ /*@unchecked@*/
 static struct urlstring {
-/*@observer@*/ /*@null@*/
     const char * leadin;
     urltype    ret;
 } urlstrings[] = {
@@ -365,7 +335,6 @@ urltype urlIsURL(const char * url)
 {
     struct urlstring *us;
 
-/*@-boundsread@*/
     if (url && *url) {
        for (us = urlstrings; us->leadin != NULL; us++) {
            if (strncmp(url, us->leadin, strlen(us->leadin)))
@@ -373,12 +342,10 @@ urltype urlIsURL(const char * url)
            return us->ret;
        }
     }
-/*@=boundsread@*/
 
     return URL_IS_UNKNOWN;
 }
 
-/*@-boundswrite@*/
 /* Return path portion of url (or pointer to NUL if url == NULL) */
 urltype urlPath(const char * url, const char ** pathp)
 {
@@ -387,7 +354,6 @@ urltype urlPath(const char * url, const char ** pathp)
 
     path = url;
     urltype = urlIsURL(url);
-    /*@-branchstate@*/
     switch (urltype) {
     case URL_IS_FTP:
        url += sizeof("ftp://") - 1;
@@ -421,14 +387,10 @@ urltype urlPath(const char * url, const char ** pathp)
        path = "";
        break;
     }
-    /*@=branchstate@*/
     if (pathp)
-       /*@-observertrans@*/
        *pathp = path;
-       /*@=observertrans@*/
     return urltype;
 }
-/*@=boundswrite@*/
 
 /*
  * Split URL into components. The URL can look like
@@ -436,8 +398,6 @@ urltype urlPath(const char * url, const char ** pathp)
   * or as in RFC2732 for IPv6 address
   *    service://user:password@[ip:v6:ad:dr:es:s]:port/path
  */
-/*@-bounds@*/
-/*@-modfilesys@*/
 int urlSplit(const char * url, urlinfo *uret)
 {
     urlinfo u;
@@ -477,7 +437,6 @@ int urlSplit(const char * url, urlinfo *uret)
     /* Look for ...@host... */
     fe = f = s;
     while (*fe && *fe != '@') fe++;
-    /*@-branchstate@*/
     if (*fe == '@') {
        s = fe + 1;
        *fe = '\0';
@@ -489,7 +448,6 @@ int urlSplit(const char * url, urlinfo *uret)
        }
        u->user = xstrdup(f);
     }
-    /*@=branchstate@*/
 
     /* Look for ...host:port or [v6addr]:port*/
     fe = f = s;
@@ -518,10 +476,8 @@ int urlSplit(const char * url, urlinfo *uret)
 
     if (u->port < 0 && u->scheme != NULL) {
        struct servent *serv;
-/*@-multithreaded -moduncon @*/
        /* HACK hkp:// might lookup "pgpkeyserver" */
        serv = getservbyname(u->scheme, "tcp");
-/*@=multithreaded =moduncon @*/
        if (serv != NULL)
            u->port = ntohs(serv->s_port);
        else if (u->urltype == URL_IS_FTP)
@@ -537,14 +493,11 @@ int urlSplit(const char * url, urlinfo *uret)
     myurl = _free(myurl);
     if (uret) {
        *uret = u;
-/*@-globs -mods @*/ /* FIX: rpmGlobalMacroContext not in <rpmlib.h> */
+/* FIX: rpmGlobalMacroContext not in <rpmlib.h> */
        urlFind(uret, 0);
-/*@=globs =mods @*/
     }
     return 0;
 }
-/*@=modfilesys@*/
-/*@=bounds@*/
 
 int urlGetFile(const char * url, const char * dest)
 {
@@ -595,7 +548,7 @@ fprintf(stderr, "*** urlGetFile sfd %p %s tfd %p %s\n", sfd, url, (tfd ? tfd : N
        if ((rc = ufdGetFile(sfd, tfd))) {
            (void) Unlink(dest);
            /* XXX FIXME: sfd possibly closed by copyData */
-           /*@-usereleased@*/ (void) Fclose(sfd) /*@=usereleased@*/ ;
+           (void) Fclose(sfd) ;
        }
        sfd = NULL;     /* XXX Fclose(sfd) done by ufdGetFile */
        break;