Changeset 67992a0 for BLFS


Ignore:
Timestamp:
11/20/2015 05:19:08 PM (8 years ago)
Author:
Pierre Labastie <pierre@…>
Branches:
2.4, ablfs-more, legacy, new_features, trunk
Children:
66f8df0
Parents:
4a03ca1
Message:

Fortify unpacking in the scripts generated for BLFS, see ticket #1693

File:
1 edited

Legend:

Unmodified
Added
Removed
  • BLFS/xsl/scripts.xsl

    r4a03ca1 r67992a0  
    9999      <xsl:when test="@role = 'installation'">
    100100        <xsl:text>
    101 if [ "${PACKAGE%.zip}" = "${PACKAGE}" ]; then
    102  if [[ -e unpacked ]] ; then
    103   UNPACKDIR=`grep '[^./]\+' unpacked | head -n1 | sed 's@^./@@;s@/.*@@'`
    104   [[ -n $UNPACKDIR ]] &amp;&amp; [[ -d $UNPACKDIR ]] &amp;&amp; rm -rf $UNPACKDIR
    105  fi
    106  tar -xvf $PACKAGE > unpacked
    107  UNPACKDIR=`grep '[^./]\+' unpacked | head -n1 | sed 's@^./@@;s@/.*@@'`
    108 else
    109  UNPACKDIR=${PACKAGE%.zip}
    110  [[ -n $UNPACKDIR ]] &amp;&amp; [[ -d $UNPACKDIR ]] &amp;&amp; rm -rf $UNPACKDIR
    111  unzip -d $UNPACKDIR ${PACKAGE}
    112 fi
    113 cd $UNPACKDIR&#xA;&#xA;</xsl:text>
     101find . -maxdepth 1 -mindepth 1 -type d | xargs sudo rm -rf
     102case $PACKAGE in
     103  *.tar.gz|*.tar.bz2|*.tar.xz|*.tgz)
     104     tar -xvf $PACKAGE &gt; unpacked
     105     UNPACKDIR=`grep '[^./]\+' unpacked | head -n1 | sed 's@^./@@;s@/.*@@'`
     106     ;;
     107  *.zip)
     108     zipinfo -1 $PACKAGE &gt; unpacked
     109     UNPACKDIR="$(sed 's@/.*@@' unpacked | uniq )"
     110     if test $(wc -w &lt;&lt;&lt; $UNPACKDIR) -eq 1; then
     111       unzip $PACKAGE
     112     else
     113       UNPACKDIR=${PACKAGE%.zip}
     114       unzip -d $UNPACKDIR $PACKAGE
     115     fi
     116     ;;
     117  *)
     118     UNPACKDIR=$PKG_DIR-build
     119     mkdir $UNPACKDIR
     120     cp $PACKAGE $UNPACKDIR
     121     ;;
     122esac
     123cd $UNPACKDIR&#xA;
     124</xsl:text>
    114125        <xsl:apply-templates select=".//screen | .//para/command"/>
    115126        <xsl:if test="$sudo = 'y'">
Note: See TracChangeset for help on using the changeset viewer.