security/nss/lib/jar/jarint.h

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/security/nss/lib/jar/jarint.h	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,55 @@
     1.4 +/* This Source Code Form is subject to the terms of the Mozilla Public
     1.5 + * License, v. 2.0. If a copy of the MPL was not distributed with this
     1.6 + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     1.7 +
     1.8 +/* JAR internal routines */
     1.9 +
    1.10 +#include "nspr.h"
    1.11 +#include "key.h"
    1.12 +#include "base64.h"
    1.13 +
    1.14 +extern CERTCertDBHandle *JAR_open_database (void);
    1.15 +
    1.16 +extern int JAR_close_database (CERTCertDBHandle *certdb);
    1.17 +
    1.18 +extern int jar_close_key_database (void *keydb);
    1.19 +
    1.20 +extern void *jar_open_key_database (void);
    1.21 +
    1.22 +extern JAR_Signer *JAR_new_signer (void);
    1.23 +
    1.24 +extern void JAR_destroy_signer (JAR_Signer *signer);
    1.25 +
    1.26 +extern JAR_Signer *jar_get_signer (JAR *jar, char *basename);
    1.27 +
    1.28 +extern int 
    1.29 +jar_append(ZZList *list, int type, char *pathname, void *data, size_t size);
    1.30 +
    1.31 +/* Translate fopen mode arg to PR_Open flags and mode */
    1.32 +PRFileDesc*
    1.33 +JAR_FOPEN_to_PR_Open(const char *name, const char *mode);
    1.34 +
    1.35 +#define ADDITEM(list,type,pathname,data,size) \
    1.36 +{ \
    1.37 +    int err = jar_append (list, type, pathname, data, size); \
    1.38 +    if (err < 0) \
    1.39 +    	return err; \
    1.40 +}
    1.41 +
    1.42 +/* Here is some ugliness in the event it is necessary to link
    1.43 +   with NSPR 1.0 libraries, which do not include an FSEEK. It is
    1.44 +   difficult to fudge an FSEEK into 1.0 so we use stdio. */
    1.45 +
    1.46 +/* nspr 2.0 suite */
    1.47 +#define JAR_FILE PRFileDesc *
    1.48 +#define JAR_FOPEN(fn,mode) JAR_FOPEN_to_PR_Open(fn,mode)
    1.49 +#define JAR_FCLOSE PR_Close
    1.50 +#define JAR_FSEEK PR_Seek
    1.51 +#define JAR_FREAD PR_Read
    1.52 +#define JAR_FWRITE PR_Write
    1.53 +
    1.54 +int 
    1.55 +jar_create_pk7(CERTCertDBHandle *certdb, void *keydb,
    1.56 +               CERTCertificate *cert, char *password, JAR_FILE infp,
    1.57 +               JAR_FILE outfp);
    1.58 +

mercurial