Annotation of embedaddon/curl/lib/firefox-db2pem.sh, revision 1.1

1.1     ! misho       1: #!/bin/sh
        !             2: # ***************************************************************************
        !             3: # *                                  _   _ ____  _
        !             4: # *  Project                     ___| | | |  _ \| |
        !             5: # *                             / __| | | | |_) | |
        !             6: # *                            | (__| |_| |  _ <| |___
        !             7: # *                             \___|\___/|_| \_\_____|
        !             8: # *
        !             9: # * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
        !            10: # *
        !            11: # * This software is licensed as described in the file COPYING, which
        !            12: # * you should have received as part of this distribution. The terms
        !            13: # * are also available at https://curl.haxx.se/docs/copyright.html.
        !            14: # *
        !            15: # * You may opt to use, copy, modify, merge, publish, distribute and/or sell
        !            16: # * copies of the Software, and permit persons to whom the Software is
        !            17: # * furnished to do so, under the terms of the COPYING file.
        !            18: # *
        !            19: # * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
        !            20: # * KIND, either express or implied.
        !            21: # *
        !            22: # ***************************************************************************
        !            23: # This shell script creates a fresh ca-bundle.crt file for use with libcurl.
        !            24: # It extracts all ca certs it finds in the local Firefox database and converts
        !            25: # them all into PEM format.
        !            26: #
        !            27: db=`ls -1d $HOME/.mozilla/firefox/*default*`
        !            28: out=$1
        !            29: 
        !            30: if test -z "$out"; then
        !            31:   out="ca-bundle.crt" # use a sensible default
        !            32: fi
        !            33: 
        !            34: currentdate=`date`
        !            35: 
        !            36: cat >$out <<EOF
        !            37: ##
        !            38: ## Bundle of CA Root Certificates
        !            39: ##
        !            40: ## Converted at: ${currentdate}
        !            41: ## These were converted from the local Firefox directory by the db2pem script.
        !            42: ##
        !            43: EOF
        !            44: 
        !            45: 
        !            46: certutil -L -h 'Builtin Object Token' -d $db | \
        !            47: grep ' *[CcGTPpu]*,[CcGTPpu]*,[CcGTPpu]* *$' | \
        !            48: sed -e 's/ *[CcGTPpu]*,[CcGTPpu]*,[CcGTPpu]* *$//' -e 's/\(.*\)/"\1"/' | \
        !            49: sort | \
        !            50: while read nickname; \
        !            51:  do echo $nickname | sed -e "s/Builtin Object Token://g"; \
        !            52: eval certutil -d $db -L -n "$nickname" -a ; \
        !            53: done >> $out

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>