�PNG  IHDR22?�� pHYs  �� OiCCPPhotoshop ICC profilexڝSgTS�=���BK���KoR RB���&*! J�!��Q�EEȠ�����Q, � ��!���������{�kּ������>���� �H3Q5� �B�������.@� $p�d!s�#�~<<+"��x� �M��0���B�\���t�8K�@z�B�@F���&S�`�cb�P-`'������{[�!�� e�Dh;��V�EX0fK�9�-0IWfH���� � 0Q��){`�##x��F�W<�+��*x��<�$9E�[-qWW.(�I+6aa�@.�y�2�4���������x����6��_-��"bb���ϫp@�t~��,/��;�m��%�h^ �u��f�@����W�p�~<�5�j>{�-�]c�K'Xt����o��(�h���w��?�G�%�fI�q^D$.Tʳ?�D��*�A��,���� �`6�B$��BB d�r`)��B(�Ͱ*`/�@4�Qh��p.�U�=p�a��(�� A�a!ڈb�X#����!�H�$ ɈQ"K�5H1R�T UH�=r9�\F��;�2����G1���Q=� �C��7�F� �dt1�����r�=�6��Ыhڏ>C�0��3�l0.��B�8, �c˱"� ���V����cϱw�E� 6wB aAHXLXN�H� $4� 7 �Q�'"��K�&���b21�XH,#��/{�C�7$�C2'��I��T��F�nR#�,��4H#���dk�9�, +ȅ����3��!�[ �b@q��S�(R�jJ��4�e�2AU��Rݨ�T5�ZB���R�Q��4u�9̓IK�����hh�i��t�ݕN��W���G���w ��Ljg(�gw��L�Ӌ�T071���oUX*�*|�� �J�&�*/T����ު U�U�T��^S}�FU3S� Ԗ�U��P�SSg�;���g�oT?�~Y��Y�L�OC�Q��_�� c�x,!k ��u�5�&���|v*�����=���9C3J3W�R�f?�q��tN �(���~���)�)�4L�1e\k����X�H�Q�G�6������E�Y��A�J'\'Gg����S�Sݧ �M=:��.�k���Dw�n��^��Lo��y���}/�T�m���G X� $� �<�5qo</���QC]�@C�a�a�ᄑ��<��F�F�i�\�$�m�mƣ&&!&KM�M�RM��)�;L;L���͢�֙5�=1�2��כ߷`ZxZ,����eI��Z�Yn�Z9Y�XUZ]�F���%ֻ�����N�N���gð�ɶ�����ۮ�m�}agbg�Ů��}�}��= ���Z~s�r:V:ޚΜ�?}����/gX���3��)�i�S��Ggg�s�󈋉K��.�>.���Ƚ�Jt�q]�z���������ۯ�6�i�ܟ�4�)�Y3s���C�Q��? ��0k߬~OCO�g��#/c/�W�װ��w��a�>�>r��>�<7�2�Y_�7��ȷ�O�o�_��C#�d�z����%g��A�[��z|!��?:�e����A���AA�������!h�쐭!��Α�i�P~���a�a��~ '���W�?�p�X�1�5w��Cs�D�D�Dޛg1O9�-J5*>�.j<�7�4�?�.fY��X�XIlK9.*�6nl������� �{�/�]py�����.,:�@L�N8��A*��%�w%� y��g"/�6ш�C\*N�H*Mz�쑼5y$�3�,幄'���L Lݛ:��v m2=:�1����qB�!M��g�g�fvˬe����n��/��k���Y- �B��TZ(�*�geWf�͉�9���+��̳�ې7�����ᒶ��KW-X潬j9�������(�x��oʿ�ܔ���Ĺd�f�f���-�[����n �ڴ �V����E�/��(ۻ��C���<��e����;?T�T�T�T6��ݵa��n��{��4���[���>ɾ�UUM�f�e�I���?�������m]�Nmq����#�׹���=TR��+�G�����w- 6 U����#pDy��� �� :�v�{���vg/jB��F�S��[b[�O�>����z�G��499�?r����C�d�&����ˮ/~�����јѡ�򗓿m|������������x31^�V���w�w��O�| (�h���SЧ��������c3-� cHRMz%������u0�`:�o�_�F5IDATx��ytUս�?�;���fN$$��@B�!�k��� -*�gE���j�O�kQ�ʠ`U�B_ �AÐ0%�Ȕ�@r3ޛ;߳��$�@��v����^�s����������$��ߢ !�W��5�̱'-٘������4�>�Rƫ$�G��0U�H}�_ _� #��k�MJ/=�9Du *ڲ�k�PQ;0��j|�*�$�^컂脛y���>�z×� B��� ��(�:$�ʔ_�6��C!B����MVx��a��ζyY����j��ƋY2�9�F�{r��r�딟F��Q��hY6��� x��[l��RC��������nt@��;P��3��� F�w��7��:�P���ɋ'���mj���Bƪ�$�Q�L��y��߷g��\���z����v5�p�v$�v櫻�`6~K �Y�X����,�:��"�o�e0II"(��,������l_�C���/4�+f�E�!q��:����u����c��樼.UE�@� �]K�W���$-�h]�JG���Dz)�`��.�A/ ���mᏣc�3jK� �!�>���$�Q�!�_�? \�C2(E �M$Z I{�U���s�ǣ���=��@Բe ޻��W�����@ �w����}�9v,)��.}*|"�s��di���,���G�]W�AC�������|<����[��ߕ������K�*�G nߴ!��‹��J�!��6(L�a)��Am��������;adf��:�xm��nh�;֦I��(���o�C~ډa?�=��s����h��E������xp����)���_���t��W�����´;8���`dz=(��@@�+,�;�`�fhl��XȌ�3,uI�~z(J����� �ZX�A����H'�À�㜦�82|��a�n�z2��I���� ���EY�h�ε<�0�q�{��C��v�˅��?"@��χ�x�WS+��N�~�KQ�J�8ل�� _.W��� !TU{�����,��"�� �;�������HI S� ��))�o�1�H�D� ���� (� ;����"Ҕ��,���� �F=���O��&�Ph>�`���y��߲ &S��P�<��'��1s�1cĂ�N����2)����@�u��tv��<�+�-&�����h��[!FSG���' � z z0��<����8d&�����E0�,��<��"!P�b4��� �{S�����X����.�囤���T��hEF��X�q0"-<����h���]�Py*����F⩍��@v�˂�Y08�� .q��a��s����(!<̫1�3�L�H��7sYW�`��qtu�\7��?�@�Y�� %Ka�x�GZ�*W�P��y�����N0r9��Z�c�%���q,��k�����!!,��>���IB��� �x1�Xu�Y���v-���ֺ��N������JP��a�2`�e5��w��u;�6�i���̃��(K���ťa��(l51��JL��O'%���]���ٖ뿉!��{*�p+f ���i8��D�ȑ���ܩ�M��V��ӟz��x�7Z�1i}�^͜���6e����x��)u�d�ˏ�V�eG�\�X1�����=n�U'�~Y����L�\,�(d!x ,�:�TW8� M`r���@��r+v�Q0��>^;˴�VbF��('����� �*O��i��j�Ӆ����^�S3&� ���{������.ی�� N;��NU%d0�Ce\r"�C�b��&t7N�7��� �ȪD�[%l�۪�$��'m?�A9tI�9>��NVL ��� 6v~M�����ъ�B���0����9$&=ώm��W�0���L���&��E���f�f��'+�9��hv��7,���M��6�D�&�^� �����8 D֮�����o��k^z��O��hP�8q�5d*��YVq3�{��������#LX4�?��jP=3�~�؅c�ݰ�̱�ұ��8̲��2�G�����j��έ�9��w7���U�X�w�85C��?!I&���o&����L���I#�^�eV�,�^t5�k� �xs˛\��U�8��."���{���ǵ�l4��ݼ�;��r"���G�/~���gJV�N糦��ZZ^k+NN�D��I$�=OE�z����|*�*{��%k���G��>�`9��b;�s���8,�qs��c��.b��q�%�>r��n�R�Ƨ�%�,�A��le#�8���}; 21�0�b�&�QX�f���q�00����$>�h�N�'�a3��A���/�r ��L5�8�GԲ'�����w;��c#�q1���h$*��V^�k��QĽ�b:i������� ����H F#�_���,��]g����Ը����`RUU���� ��"�qD���>-��ϤI�~��3�̴�����NZ[[555�eeek7�m����YF#[��Đ��R��i��L�H�r ��@��J-�Pŝ��_|�-��6y��ks�V�U~��6���w.����(��0A� 4��f��� /���C�xŊ�ٳ����z=6�����rg���mKo��o�/����a�g���?'9%9��P��斓��~���L{�� �H��{AW��B��$����v�1b�&Mb�ر��ر#�0`�`xMBp! )Z�Nmo�mZ�g�}�eذaWTVV ���'99��C5��&�&+5�bT>|8��PUUETT����&���t��~TE%��'������b�tEGG;RSS�S�N�v��ѯ��t����u1@�ޚ"f��͈���r'L�Ph��m��ƌ�74o��`�x�q�P���NRSS�X,�����l&&&��MFFA!-��`��ҷ�n��Yuu�����x<I�LB%����KԒ50�!�3�bz�����ʸKL���;---�l6[��`��������Ȏ;�����egg4��!D�T��jWujyZ��������K����%����p�^���X,6��sV=�ܖ����6�3�X ���4ҿ��A2�&����_k�;d�� �VfOIEND�B`� 0x0x
PHP 8.1.34
Preview: ssh-copy-id Size: 13.84 KB
//bin/ssh-copy-id
#!/usr/bin/sh

# Copyright (c) 1999-2024 Philip Hands <phil@hands.com>
#               2021 Carlos Rodríguez Gili <carlos.rodriguez-gili@upc.edu>
#               2020 Matthias Blümel <blaimi@blaimi.de>
#               2017 Sebastien Boyron <seb@boyron.eu>
#               2013 Martin Kletzander <mkletzan@redhat.com>
#               2010 Adeodato =?iso-8859-1?Q?Sim=F3?= <asp16@alu.ua.es>
#               2010 Eric Moret <eric.moret@gmail.com>
#               2009 Xr <xr@i-jeuxvideo.com>
#               2007 Justin Pryzby <justinpryzby@users.sourceforge.net>
#               2004 Reini Urban <rurban@x-ray.at>
#               2003 Colin Watson <cjwatson@debian.org>
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

# Shell script to install your public key(s) on a remote machine
# See the ssh-copy-id(1) man page for details

# shellcheck shell=dash

# check that we have something mildly sane as our shell, or try to find something better
if false ^ printf "%s: WARNING: ancient shell, hunting for a more modern one... " "$0"
then
  SANE_SH=${SANE_SH:-/usr/bin/ksh}
  if printf 'true ^ false\n' | "$SANE_SH"
  then
    printf "'%s' seems viable.\\n" "$SANE_SH"
    exec "$SANE_SH" "$0" "$@"
  else
    cat <<-EOF
	oh dear.

	  If you have a more recent shell available, that supports \$(...) etc.
	  please try setting the environment variable SANE_SH to the path of that
	  shell, and then retry running this script. If that works, please report
	  a bug describing your setup, and the shell you used to make it work.

	EOF
    printf '%s: ERROR: Less dimwitted shell required.\n' "$0" >&2
    exit 1
  fi
fi

# shellcheck disable=SC2010
DEFAULT_PUB_ID_FILE=$(ls -dt "${HOME}"/.ssh/id*.pub 2>/dev/null | grep -v -- '-cert.pub$' | head -n 1)
SSH="ssh -a -x"
TARGET_PATH=".ssh/authorized_keys"
umask 0177

usage () {
  printf 'Usage: %s [-h|-?|-f|-n|-s|-x] [-i [identity_file]] [-t target_path] [-F ssh_config] [[-o ssh_option] ...] [-p port] [user@]hostname\n' "$0" >&2
  printf '\t-f: force mode -- copy keys without trying to check if they are already installed\n' >&2
  printf '\t-n: dry run    -- no keys are actually copied\n' >&2
  printf '\t-s: use sftp   -- use sftp instead of executing remote-commands. Can be useful if the remote only allows sftp\n' >&2
  printf '\t-x: debug      -- enables -x in this shell, for debugging\n' >&2
  printf '\t-h|-?: print this help\n' >&2
  exit 1
}

# escape any single quotes in an argument
quote() {
  printf '%s\n' "$1" | sed -e "s/'/'\\\\''/g"
}

use_id_file() {
  L_ID_FILE="$1"

  if [ -z "$L_ID_FILE" ] ; then
    printf '%s: ERROR: no ID file found\n' "$0" >&2
    exit 1
  fi

  if expr "$L_ID_FILE" : '.*\.pub$' >/dev/null ; then
    PUB_ID_FILE="$L_ID_FILE"
  else
    PUB_ID_FILE="$L_ID_FILE.pub"
  fi

  [ "$FORCED" ] || PRIV_ID_FILE=$(dirname "$PUB_ID_FILE")/$(basename "$PUB_ID_FILE" .pub)

  # check that the files are readable
  for f in "$PUB_ID_FILE" ${PRIV_ID_FILE:+"$PRIV_ID_FILE"} ; do
    ErrMSG=$( { : < "$f" ; } 2>&1 ) || {
      L_PRIVMSG=""
      [ "$f" = "$PRIV_ID_FILE" ] && L_PRIVMSG="	(to install the contents of '$PUB_ID_FILE' anyway, look at the -f option)"
      printf "\\n%s: ERROR: failed to open ID file '%s': %s\\n" "$0" "$f" "$(printf '%s\n%s\n' "$ErrMSG" "$L_PRIVMSG" | sed -e 's/.*: *//')" >&2
      exit 1
    }
  done
  GET_ID="cat \"$PUB_ID_FILE\""
}

if [ -n "$SSH_AUTH_SOCK" ] && ssh-add -L >/dev/null 2>&1 ; then
  GET_ID="ssh-add -L"
fi

OPTS="io:p:F:t:fnsxh?"

while getopts "$OPTS" OPT
do
  case "$OPT" in
    i)
      [ "${SEEN_OPT_I}" ] && {
        printf '\n%s: ERROR: -i option must not be specified more than once\n\n' "$0" >&2
        usage
      }
      SEEN_OPT_I="yes"

      # Check for -i's optional parameter
      eval "nextarg=\${$OPTIND}"
      # shellcheck disable=SC2154
      if [ $OPTIND = $# ]; then
        if [ -r "$nextarg" ] && grep -iq ssh "$nextarg"; then
          printf '\n%s: ERROR: Missing hostname. Use "-i -- %s" if you really mean to use this as the hostname\n\n' "$0" "$nextarg" >&2
          usage
        fi
      elif ! expr -- "$nextarg" : "-[$(echo "$OPTS" | tr -d :)-]" >/dev/null ; then
        # when not at the last arg, and not followed by an option, -i has an argument
        OPTARG="$nextarg"
        OPTIND=$((OPTIND + 1))
      fi
      use_id_file "${OPTARG:-$DEFAULT_PUB_ID_FILE}"
      ;;
    o|F)
      OPTS_oF="${OPTS_oF:+$OPTS_oF }-$OPT '$(quote "${OPTARG}")'"
      ;;
    f)
      FORCED=1
      ;;
    n)
      DRY_RUN=1
      ;;
    p)
      SSH_PORT=${OPTARG}
      ;;
    s)
      SFTP=sftp
      ;;
    t)
      TARGET_PATH="${OPTARG}"
      ;;
    x)
      SET_X="set -x;"
      set -x
      ;;
    h|\?)
      usage
      ;;
  esac
done
#shift all args to keep only USER_HOST
shift $((OPTIND-1))

if [ $# = 0 ] ; then
  usage
fi
if [ $# != 1 ] ; then
  printf '%s: ERROR: Too many arguments.  Expecting a target hostname, got: %s\n\n' "$0" "$SAVEARGS" >&2
  usage
fi

USER_HOST="$*"
# tack the hostname onto SSH_OPTS
OPTS_USER_HOST="${OPTS_oF:+$OPTS_oF }'$(quote "$USER_HOST")'"
SSH_OPTS="${SSH_PORT:+-p $SSH_PORT }$OPTS_USER_HOST"
# and populate "$@" for later use (only way to get proper quoting of options)
eval set -- "$SSH_OPTS"

# shellcheck disable=SC2086
if [ -z "$(eval $GET_ID)" ] && [ -r "${PUB_ID_FILE:=$DEFAULT_PUB_ID_FILE}" ] ; then
  use_id_file "$PUB_ID_FILE"
fi

printf '%s: INFO: Source of key(s) to be installed: %s\n' "$0" "${GET_ID#cat }" >&2

# shellcheck disable=SC2086
if [ -z "$(eval $GET_ID)" ] ; then
  printf '%s: ERROR: No identities found\n' "$0" >&2
  exit 1
fi

# assert_scratch_ok()
# ensures that $SCRATCH_DIR is setup.
assert_scratch_ok() {
  [ "$SCRATCH_DIR" ] && [ -d "$SCRATCH_DIR" ] && [ -w "$SCRATCH_DIR" ] && return 0

  printf 'ERROR: Assertion failure: in %s(): scratch_dir was not correctly set up (SCRATCH_DIR = "%s")\n' "$1" "$SCRATCH_DIR" >&2
  return 1
}

# filter_ids()
# tries to log in using the keys piped to it, and filters out any that work
filter_ids() {
  L_SUCCESS="$1"
  assert_scratch_ok filter_ids || return
  L_TMP_ID_FILE="$SCRATCH_DIR"/popids_tmp_id
  L_OUTPUT_FILE="$SCRATCH_DIR"/popids_output

  # repopulate "$@" inside this function
  eval set -- "$SSH_OPTS"

  while read -r ID || [ "$ID" ] ; do
    printf '%s\n' "$ID" > "$L_TMP_ID_FILE"

    # the next line assumes $PRIV_ID_FILE only set if using a single id file - this
    # assumption will break if we implement the possibility of multiple -i options.
    # The point being that if file based, ssh needs the private key, which it cannot
    # find if only given the contents of the .pub file in an unrelated tmpfile
    $SSH -i "${PRIV_ID_FILE:-$L_TMP_ID_FILE}" \
      -o ControlPath=none \
      -o LogLevel=INFO \
      -o PreferredAuthentications=publickey \
      -o IdentitiesOnly=yes "$@" exit >"$L_OUTPUT_FILE" 2>&1 </dev/null
    if [ "$?" = "$L_SUCCESS" ] || {
         [ "$SFTP" ] && grep 'allows sftp connections only' "$L_OUTPUT_FILE" >/dev/null
         # this error counts as a success if we're setting up an sftp connection
       }
    then
      : > "$L_TMP_ID_FILE"
    else
      grep 'Permission denied' "$L_OUTPUT_FILE" >/dev/null || {
        sed -e 's/^/ERROR: /' <"$L_OUTPUT_FILE" >"$L_TMP_ID_FILE"
        cat >/dev/null #consume the other keys, causing loop to end
      }
    fi

    cat "$L_TMP_ID_FILE"
  done
}

# populate_new_ids() uses several global variables ($USER_HOST, $SSH_OPTS ...)
# and has the side effect of setting $NEW_IDS
populate_new_ids() {
  if [ "$FORCED" ] ; then
    # shellcheck disable=SC2086
    NEW_IDS=$(eval $GET_ID)
    return
  fi

  printf '%s: INFO: attempting to log in with the new key(s), to filter out any that are already installed\n' "$0" >&2
  # shellcheck disable=SC2086
  NEW_IDS=$(eval $GET_ID | filter_ids $1)

  if expr "$NEW_IDS" : "^ERROR: " >/dev/null ; then
    printf '\n%s: %s\n\n' "$0" "$NEW_IDS" >&2
    exit 1
  fi
  if [ -z "$NEW_IDS" ] ; then
    printf '\n%s: WARNING: All keys were skipped because they already exist on the remote system.\n' "$0" >&2
    printf '\t\t(if you think this is a mistake, you may want to use -f option)\n\n' >&2
    exit 0
  fi
  printf '%s: INFO: %d key(s) remain to be installed -- if you are prompted now it is to install the new keys\n' "$0" "$(printf '%s\n' "$NEW_IDS" | wc -l)" >&2
}

# installkey_sh [target_path]
#    produce a one-liner to add the keys to remote $TARGET_PATH
installkeys_sh() {
  # In setting INSTALLKEYS_SH:
  #    the tr puts it all on one line (to placate tcsh)
  #      (hence the excessive use of semi-colons (;) )
  # then in the command:
  #    cd to be at $HOME, just in case;
  #    the -z `tail ...` checks for a trailing newline. The echo adds one if was missing
  #    the cat adds the keys we're getting via STDIN
  #    and if available restorecon is used to restore the SELinux context
  # OpenWrt has a special case for root only.
  INSTALLKEYS_SH=$(tr '\t\n' ' ' <<-EOF
	$SET_X
	cd;
	umask 077;
	AUTH_KEY_FILE="${TARGET_PATH}";
	[ -f /etc/openwrt_release ] && [ "\$LOGNAME" = "root" ] &&
		AUTH_KEY_FILE=/etc/dropbear/authorized_keys;
	AUTH_KEY_DIR=\`dirname "\${AUTH_KEY_FILE}"\`;
	mkdir -p "\${AUTH_KEY_DIR}" &&
		{ [ -z "\`tail -1c "\${AUTH_KEY_FILE}" 2>/dev/null\`" ] ||
			echo >> "\${AUTH_KEY_FILE}" || exit 1; } &&
		cat >> "\${AUTH_KEY_FILE}" || exit 1;
	if type restorecon >/dev/null 2>&1; then
		restorecon -F "\${AUTH_KEY_DIR}" "\${AUTH_KEY_FILE}";
	fi
	EOF
  )

  # to defend against quirky remote shells: use 'exec sh -c' to get POSIX;
  printf "exec sh -c '%s'" "${INSTALLKEYS_SH}"
}

#shellcheck disable=SC2120 # the 'eval set' confuses this
installkeys_via_sftp() {
  AUTH_KEY_FILE=${TARGET_PATH}
  AUTH_KEY_DIR=$(dirname "${AUTH_KEY_FILE}")

  # repopulate "$@" inside this function
  eval set -- "$SSH_OPTS"

  assert_scratch_ok installkeys_via_sftp || return 1
  L_KEYS="$SCRATCH_DIR"/authorized_keys
  L_SHARED_CON="$SCRATCH_DIR"/master-conn
  $SSH -f -N -M -S "$L_SHARED_CON" "$@"
  L_CLEANUP="$SSH -S '$L_SHARED_CON' -O exit 'ignored' >/dev/null 2>&1 ; $SCRATCH_CLEANUP"
  #shellcheck disable=SC2064
  trap "$L_CLEANUP" EXIT TERM INT QUIT
  sftp -b - -o "ControlPath='$L_SHARED_CON'" "ignored" <<-EOF || return 1
	-get "$AUTH_KEY_FILE" "$L_KEYS"
	EOF
  # add a newline or create file if it's missing, same like above
  [ -z "$(tail -1c "$L_KEYS" 2>/dev/null)" ] || echo >> "$L_KEYS"
  # append the keys being piped in here
  cat >> "$L_KEYS"
  sftp -b - -o "ControlPath='$L_SHARED_CON'" "ignored" <<-EOF || return 1
	-mkdir "$AUTH_KEY_DIR"
	chmod 700 "$AUTH_KEY_DIR"
	put "$L_KEYS" "$AUTH_KEY_FILE"
	chmod 600 "$AUTH_KEY_FILE"
	EOF
  #shellcheck disable=SC2064
  eval "$L_CLEANUP" && trap "$SCRATCH_CLEANUP" EXIT TERM INT QUIT
}


# create a scratch dir for any temporary files needed
if SCRATCH_DIR=$(mktemp -d ~/.ssh/ssh-copy-id.XXXXXXXXXX) &&
    [ "$SCRATCH_DIR" ] && [ -d "$SCRATCH_DIR" ]
then
  chmod 0700 "$SCRATCH_DIR"
  SCRATCH_CLEANUP="rm -rf \"$SCRATCH_DIR\""
  #shellcheck disable=SC2064
  trap "$SCRATCH_CLEANUP" EXIT TERM INT QUIT
else
  printf '%s: ERROR: failed to create required temporary directory under ~/.ssh (HOME="%s")\n' "$0" "$HOME" >&2
  exit 1
fi

REMOTE_VERSION=$($SSH -v -o PreferredAuthentications=',' -o ControlPath=none "$@" 2>&1 |
                 sed -ne 's/.*remote software version //p')

# shellcheck disable=SC2029
case "$REMOTE_VERSION" in
  NetScreen*)
    populate_new_ids 1
    for KEY in $(printf "%s" "$NEW_IDS" | cut -d' ' -f2) ; do
      KEY_NO=$((KEY_NO + 1))
      printf '%s\n' "$KEY" | grep ssh-dss >/dev/null || {
         printf '%s: WARNING: Non-dsa key (#%d) skipped (NetScreen only supports DSA keys)\n' "$0" "$KEY_NO" >&2
         continue
      }
      [ "$DRY_RUN" ] || printf 'set ssh pka-dsa key %s\nsave\nexit\n' "$KEY" | $SSH -T "$@" >/dev/null 2>&1
      if [ $? = 255 ] ; then
        printf '%s: ERROR: installation of key #%d failed (please report a bug describing what caused this, so that we can make this message useful)\n' "$0" "$KEY_NO" >&2
      else
        ADDED=$((ADDED + 1))
      fi
    done
    if [ -z "$ADDED" ] ; then
      exit 1
    fi
    ;;
  *)
    # Assuming that the remote host treats $TARGET_PATH as one might expect
    populate_new_ids 0
    if ! [ "$DRY_RUN" ] ; then
      printf '%s\n' "$NEW_IDS" | \
        if [ "$SFTP" ] ; then
          #shellcheck disable=SC2119
          installkeys_via_sftp
        else
          $SSH "$@" "$(installkeys_sh)"
        fi || exit 1
    fi
    ADDED=$(printf '%s\n' "$NEW_IDS" | wc -l)
    ;;
esac

if [ "$DRY_RUN" ] ; then
  cat <<-EOF
	=-=-=-=-=-=-=-=
	Would have added the following key(s):

	$NEW_IDS
	=-=-=-=-=-=-=-=
	EOF
else
  [ -z "$SFTP" ] || PORT_OPT=P
  cat <<-EOF

	Number of key(s) added: $ADDED

	Now try logging into the machine, with: "${SFTP:-ssh} ${SEEN_OPT_I:+-i${PRIV_ID_FILE:+ $PRIV_ID_FILE} }${SSH_PORT:+-${PORT_OPT:-p} $SSH_PORT }${OPTS_USER_HOST}"
	and check to make sure that only the key(s) you wanted were added.

	EOF
fi

# =-=-=-=

Directory Contents

Dirs: 0 × Files: 512
Name Size Perms Modified Actions
35.52 KB lrwxr-xr-x 2023-09-27 12:16:24
Edit Download
35.52 KB lrwxr-xr-x 2023-09-27 12:16:24
Edit Download
27.74 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
27.30 KB lrwxr-xr-x 2026-04-10 02:30:12
Edit Download
15.09 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
55.98 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.11 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
710.31 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
149.95 KB lrwxr-xr-x 2026-10-29 16:53:08
Edit Download
4.41 KB lrwxr-xr-x 2025-11-12 00:38:45
Edit Download
4.41 KB lrwxr-xr-x 2025-11-12 00:38:45
Edit Download
4.41 KB lrwxr-xr-x 2025-11-12 00:38:45
Edit Download
14.42 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
8.33 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
31.43 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
251.93 KB lrwxr-xr-x 2023-09-27 12:16:24
Edit Download
251.93 KB lrwxr-xr-x 2023-09-27 12:16:24
Edit Download
20.57 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
16.72 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
33.08 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
697.04 KB lrwxr-xr-x 2026-09-29 22:14:27
Edit Download
51.59 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.49 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.49 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
47.83 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
1.32 MB lrwxr-xr-x 2024-04-30 14:33:56
Edit Download
6.91 KB lrwxr-xr-x 2024-04-30 14:33:47
Edit Download
140 B lrwxr-xr-x 2025-11-12 00:38:44
Edit Download
494.76 KB lrwxr-xr-x 2022-01-27 00:15:31
Edit Download
39.45 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
39.45 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
2.09 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
2.09 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
2.01 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
39.45 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
15.23 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
1.23 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
1.23 KB lrwxr-xr-x 2026-04-04 21:34:55
Edit Download
1.05 MB lrwxr-x--- 2026-04-04 22:27:54
Edit Download
27.19 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
228 B lrwxr-x--- 2026-04-04 22:18:01
Edit Download
219 B lrwxr-x--- 2026-04-04 22:18:01
Edit Download
4.42 KB lrwxr-xr-x 2026-10-15 16:31:04
Edit Download
51.82 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
87.79 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
35.46 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
3.21 KB lrwxr-xr-x 2026-10-08 20:47:00
Edit Download
1.04 MB lrwxr-x--- 2026-04-04 22:27:56
Edit Download
60.05 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
55.98 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
55.96 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
59.99 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
27.30 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
31.38 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
10.96 KB lrwxr-xr-x 2026-11-03 19:30:06
Edit Download
15.15 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
1.78 KB lrwxr-xr-x 2026-10-15 16:42:15
Edit Download
1.78 KB lrwxr-xr-x 2026-10-15 16:42:15
Edit Download
40.13 KB lrwxr-xr-x 2022-01-29 18:15:51
Edit Download
23.23 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
15.19 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
15.16 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
35.34 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
35.55 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.10 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
15.09 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
15.10 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
15.10 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
141.02 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
8.37 KB lrwxr-xr-x 2025-05-13 21:00:14
Edit Download
1.05 MB lrwxr-xr-x 2026-04-04 22:27:54
Edit Download
1.49 KB lrwxr-xr-x 2026-04-09 05:59:33
Edit Download
40.47 KB lrwxr-xr-x 2026-10-16 11:37:05
Edit Download
108.66 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
248.48 KB lrwxr-xr-x 2026-10-30 08:42:36
Edit Download
43.61 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
1.58 MB lrwxr-xr-x 2025-09-25 11:46:37
Edit Download
103.84 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
6.06 KB lrwxr-xr-x 2026-10-08 11:40:05
Edit Download
67.95 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
44.48 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
80.53 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
194.70 KB lrwxr-xr-x 2022-01-29 18:15:51
Edit Download
52.30 KB lrwxr-xr-x 2022-01-29 18:15:51
Edit Download
136.60 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
137.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.62 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
27.30 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.09 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
23.20 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
149.27 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
27.29 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
52.51 KB lrwxr-xr-x 2022-01-30 05:02:01
Edit Download
32 B lrwxr-xr-x 2022-01-31 20:22:32
Edit Download
40.69 KB lrwxr-xr-x 2022-02-11 16:42:02
Edit Download
23.73 KB lrwxr-xr-x 2022-01-30 11:02:06
Edit Download
15.80 KB lrwxr-xr-x 2022-01-30 11:02:06
Edit Download
44.03 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
643 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
189.52 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
1.38 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
39.54 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
108.44 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
71.87 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
27.28 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
139 B lrwxr-xr-x 2023-01-23 15:48:20
Edit Download
23.17 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
19.16 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.13 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.13 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.13 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.14 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.13 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.14 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
15.14 KB lrwxr-xr-x 2023-01-23 19:48:35
Edit Download
32 B lrwxr-xr-x 2022-01-31 20:22:32
Edit Download
27.63 KB lrwxr-xr-x 2026-04-05 00:57:05
Edit Download
284.95 KB lrwxr-xr-x 2024-10-02 21:04:59
Edit Download
412.64 KB lrwxr-xr-x 2022-01-30 08:23:38
Edit Download
412.64 KB lrwxr-xr-x 2022-01-30 08:23:38
Edit Download
23.37 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
39.58 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.51 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
23.36 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
4.32 KB lrwxr-xr-x 2025-03-31 15:40:24
Edit Download
31.25 KB lrwxr-xr-x 2026-04-09 11:24:07
Edit Download
1.05 MB lrwxr-x--- 2026-04-04 22:27:54
Edit Download
697.04 KB lrwxr-xr-x 2026-09-29 22:14:27
Edit Download
1.04 MB lrwxr-x--- 2026-04-04 22:27:56
Edit Download
27.67 KB lrwxr-xr-x 2026-04-04 22:27:55
Edit Download
27.65 KB lrwxr-xr-x 2026-04-04 22:27:56
Edit Download
27.67 KB lrwxr-xr-x 2026-04-04 22:27:56
Edit Download
477.13 KB lrwxr-xr-x 2026-04-04 22:27:54
Edit Download
291.77 KB lrwxr-xr-x 2026-04-04 22:28:00
Edit Download
320.47 KB lrwxr-xr-x 2026-04-04 22:27:59
Edit Download
542 B lrwxr-xr-x 2026-09-28 05:14:34
Edit Download
27.45 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
15.87 KB lrwxr-xr-x 2022-11-23 16:40:51
Edit Download
15.82 KB lrwxr-xr-x 2022-11-23 16:40:51
Edit Download
189.52 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
15.82 KB lrwxr-xr-x 2022-03-25 08:00:31
Edit Download
35.23 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
35.86 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
23.27 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
15.13 KB lrwxr-xr-x 2026-10-15 16:07:32
Edit Download
4.19 MB lrwxr-xr-x 2026-04-05 06:38:14
Edit Download
4.19 MB lrwxr-xr-x 2026-04-05 06:38:14
Edit Download
807.58 KB lrwxr-xr-x 2026-04-05 06:38:14
Edit Download
4.19 MB lrwxr-xr-x 2026-04-05 06:38:14
Edit Download
4.19 MB lrwxr-xr-x 2026-04-05 06:38:14
Edit Download
15.67 KB lrwxr-xr-x 2022-11-23 17:49:37
Edit Download
249.80 KB lrwxr-xr-x 2024-04-02 12:55:30
Edit Download
916 B lrwxr-xr-x 2022-02-01 10:44:38
Edit Download
3.21 KB lrwxr-xr-x 2022-02-01 10:44:38
Edit Download
1.07 MB lrwxr-xr-x 2026-01-15 21:34:19
Edit Download
342.27 KB lrwxr-xr-x 2026-01-15 21:34:19
Edit Download
36.10 KB lrwxr-xr-x 2022-02-09 23:24:31
Edit Download
27.50 KB lrwxr-xr-x 2026-01-15 21:34:19
Edit Download
295.43 KB lrwxr-xr-x 2026-01-15 21:34:19
Edit Download
201.72 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
101.48 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
154.49 KB lrwxr-xr-x 2022-01-31 20:22:36
Edit Download
96.77 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
167.26 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
122.20 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
35.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.13 KB lrwxr-xr-x 2026-10-15 16:07:32
Edit Download
281 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
0 B ?????????? 2026-11-03 22:03:55
Edit Download
522.29 KB lrwxr-xr-x 2026-08-31 14:49:25
Edit Download
130.86 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
732.07 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
2.29 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
6.33 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
88.95 KB lrwxr-xr-x 2026-08-31 16:16:14
Edit Download
28.69 KB lrwxr-xr-x 2026-09-14 04:10:38
Edit Download
59.50 KB lrwxr-xr-x 2026-09-14 04:10:29
Edit Download
39.61 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
51.41 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
108.57 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
23.84 KB lrwxr-xr-x 2022-02-14 11:22:04
Edit Download
102.67 KB lrwxr-xr-x 2022-01-31 20:22:03
Edit Download
64.09 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
205 B lrwxr-xr-x 2025-07-29 16:13:20
Edit Download
21.67 KB lrwxr-xr-x 2025-07-29 16:16:01
Edit Download
15.49 KB lrwxr-xr-x 2025-07-29 16:17:08
Edit Download
39.52 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.10 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
36.46 KB lrwxr-xr-x 2022-02-14 15:33:03
Edit Download
4.03 KB lrwxr-xr-x 2025-09-21 12:23:10
Edit Download
15.09 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
63.68 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
87.79 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
149.08 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
4.10 KB lrwxr-xr-x 2022-02-24 09:56:25
Edit Download
15.21 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
19.23 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
39.34 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
15.15 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
992 B lrwxr-xr-x 2019-10-08 00:15:21
Edit Download
51.69 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.28 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
1.71 MB lrwxr-x--- 2026-04-04 21:15:43
Edit Download
1.71 MB lrwxr-x--- 2026-04-04 21:15:43
Edit Download
5.32 KB lrwxr-xr-x 2026-10-08 20:47:02
Edit Download
197.70 KB lrwxr-xr-x 2025-09-21 12:35:06
Edit Download
15.17 KB lrwxr-xr-x 2025-09-21 12:35:06
Edit Download
24.61 KB lrwxr-xr-x 2025-09-21 12:35:06
Edit Download
3.50 KB lrwxr-xr-x 2025-09-21 11:44:16
Edit Download
412.64 KB lrwxr-xr-x 2022-01-30 08:23:38
Edit Download
15.41 KB lrwxr-xr-x 2026-09-14 04:10:38
Edit Download
359.18 KB lrwxr-xr-x 2024-10-01 17:49:19
Edit Download
126.17 KB lrwxr-xr-x 2024-10-01 17:49:19
Edit Download
31.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
55.95 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
59.08 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
314.05 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
35.98 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
43.46 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
19.17 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
137.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
26.59 MB lrwxr-xr-x 2026-04-04 22:27:58
Edit Download
240.40 KB lrwxr-xr-x 2022-03-31 07:28:13
Edit Download
1.43 KB lrwxr-xr-x 2026-10-11 23:08:15
Edit Download
1.56 KB lrwxr-xr-x 2026-10-11 23:08:15
Edit Download
1.56 KB lrwxr-xr-x 2026-10-11 23:08:16
Edit Download
0 B ?????????? 2026-11-03 22:03:55
Edit Download
0 B ?????????? 2026-11-03 22:03:55
Edit Download
0 B ?????????? 2026-11-03 22:03:55
Edit Download
249.80 KB lrwxr-xr-x 2024-04-02 12:55:30
Edit Download
614 B lrwxr-xr-x 2026-10-08 16:35:38
Edit Download
5.23 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
109.34 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.78 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
5.06 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.78 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.51 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.12 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.87 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
8.05 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
23.49 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
3.21 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
34.53 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.77 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.49 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
13.48 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
17.56 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.77 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.79 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.49 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.48 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
27.30 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
39.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.14 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
68.13 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.64 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
43.68 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.62 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.10 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
15.10 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
43.42 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
1.42 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
140.95 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
5.23 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
109.34 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.78 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
5.06 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.78 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.87 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.77 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.77 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.50 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
3.21 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.48 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
72.03 KB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
4.48 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
23.23 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
346.20 KB lrwxr-xr-x 2025-03-13 03:12:50
Edit Download
916 B lrwxr-xr-x 2022-02-01 10:44:38
Edit Download
3.29 KB lrwxr-xr-x 2026-04-10 02:29:50
Edit Download
35.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
100.51 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
44.72 KB lrwxr-xr-x 2026-04-04 21:15:43
Edit Download
35.40 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.50 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
3.21 KB lrwxr-xr-x 2022-02-01 10:44:38
Edit Download
112.52 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
71.80 KB lrwxr-xr-x 2026-10-26 10:51:26
Edit Download
55.63 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
185.37 KB lrwxr-xr-x 2026-04-04 21:15:43
Edit Download
413.09 KB lrwxr-xr-x 2026-04-04 21:15:43
Edit Download
63.88 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
1.07 MB lrwxr-xr-x 2026-10-08 16:35:41
Edit Download
19.11 KB lrwxr-xr-x 2023-04-07 10:19:30
Edit Download
19.13 KB lrwxr-xr-x 2023-04-07 10:19:30
Edit Download
60.17 KB lrwxr-xr-x 2023-04-07 10:19:30
Edit Download
1.73 KB lrwxr-xr-x 2026-10-29 08:34:18
Edit Download
4.41 KB lrwxr-xr-x 2022-04-14 14:45:09
Edit Download
35.39 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
195.02 KB lrwxr-xr-x 2022-03-25 15:42:41
Edit Download
35.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
701 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
913 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
15.13 KB lrwxr-xr-x 2026-09-14 04:10:49
Edit Download
15.13 KB lrwxr-xr-x 2026-09-14 04:10:49
Edit Download
43.81 KB lrwxr-xr-x 2026-09-14 04:10:38
Edit Download
118 B lrwxr-xr-x 2022-02-14 23:51:30
Edit Download
10.56 KB lrwxr-xr-x 2026-09-14 04:10:29
Edit Download
14.49 KB lrwxr-xr-x 2025-10-02 19:40:19
Edit Download
43.81 KB lrwxr-xr-x 2026-09-14 04:10:38
Edit Download
31.42 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
937 B lrwxr-xr-x 2026-05-18 16:41:15
Edit Download
201.72 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
8.08 KB lrwxr-xr-x 2022-02-11 16:42:02
Edit Download
89.33 KB lrwxr-xr-x 2025-10-20 12:44:34
Edit Download
35.41 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
335 B lrwxr-xr-x 2023-04-06 20:27:13
Edit Download
31.42 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
4.43 KB lrwxr-xr-x 2026-09-14 04:10:06
Edit Download
35.39 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
4.04 KB lrwxr-xr-x 2026-09-14 04:10:38
Edit Download
14.68 KB lrwxr-xr-x 2022-03-25 12:10:57
Edit Download
10.55 KB lrwxr-xr-x 2022-03-25 12:10:57
Edit Download
4.01 KB lrwxr-xr-x 2022-02-11 16:01:30
Edit Download
3.57 KB lrwxr-xr-x 2022-02-11 19:01:35
Edit Download
199.76 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
72.10 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
92.92 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
5.53 KB lrwxr-xr-x 2019-10-08 00:15:21
Edit Download
5.53 KB lrwxr-xr-x 2019-10-08 00:15:21
Edit Download
5.53 KB lrwxr-xr-x 2019-10-08 00:15:21
Edit Download
15.11 KB lrwxr-xr-x 2026-10-29 16:53:08
Edit Download
31.29 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
51.58 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
13.24 KB lrwxr-xr-x 2022-02-16 11:58:05
Edit Download
141.15 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
635 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
1.24 KB lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
276 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
219 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
219 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
219 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
1.06 KB lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
651 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
673 B lrwxr-xr-x 2026-10-15 16:07:22
Edit Download
128.82 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.52 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.28 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
78 B lrwxr-xr-x 2026-10-26 11:04:25
Edit Download
78 B lrwxr-xr-x 2026-10-26 11:04:25
Edit Download
78 B lrwxr-xr-x 2026-10-26 11:04:25
Edit Download
15.09 KB lrwxr-xr-x 2026-10-26 11:04:40
Edit Download
15.09 KB lrwxr-xr-x 2026-10-26 11:04:40
Edit Download
15.09 KB lrwxr-xr-x 2026-10-26 11:04:40
Edit Download
55.99 KB lrwxr-xr-x 2026-04-04 21:15:43
Edit Download
667.28 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
39.51 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.59 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.93 KB lrwxr-xr-x 2022-11-02 11:35:06
Edit Download
92 B lrwxr-xr-x 2022-01-30 05:02:00
Edit Download
23.23 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
729 B lrwxr-xr-x 2026-10-08 16:35:38
Edit Download
15.16 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
4.46 MB lrwxr-xr-x 2026-09-25 12:21:56
Edit Download
27.34 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
15.16 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
59.99 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
43.42 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
346.20 KB lrwxr-xr-x 2025-03-13 03:12:50
Edit Download
15.09 KB lrwxr-xr-x 2026-09-28 05:12:01
Edit Download
89 B lrwxr-xr-x 2026-10-29 16:52:57
Edit Download
35.46 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
1.38 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
1.38 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
3.84 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
856.41 KB lrwxr-xr-x 2026-04-05 06:38:14
Edit Download
39.55 KB lrwxr-xr-x 2023-04-07 01:57:08
Edit Download
262 B lrwxr-xr-x 2021-07-27 15:14:26
Edit Download
1.88 KB lrwxr-xr-x 2021-07-27 15:14:26
Edit Download
132.91 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
483.04 KB lrwxr-xr-x 2023-01-30 11:37:57
Edit Download
51.58 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
44.20 KB lrwxr-xr-x 2022-01-29 18:15:51
Edit Download
112.84 KB lrwxr-xr-x 2026-04-04 20:24:33
Edit Download
8.08 KB lrwxr-xr-x 2026-10-16 11:40:35
Edit Download
47.59 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.15 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
35.33 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
157.07 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
1.32 MB lrwxr-xr-x 2024-04-30 14:33:56
Edit Download
39.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
51.68 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
47.80 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.61 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
31.40 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
23.42 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.40 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
25.44 KB lrwxr-xr-x 2026-04-10 02:30:06
Edit Download
0 B ?????????? 2026-11-03 22:03:55
Edit Download
112.90 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
125 B lrwxr-xr-x 2019-10-08 00:15:21
Edit Download
18.96 KB lrwxr-xr-x 2026-09-14 04:10:38
Edit Download
52.11 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.45 KB lrwxr-xr-x 2026-10-08 20:49:33
Edit Download
1.54 MB lrwxr-xr-x 2026-08-24 12:07:02
Edit Download
896.37 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
305.71 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
317.70 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
13.84 KB lrwxr-xr-x 2026-10-21 08:52:45
Edit Download
475.42 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
338.23 KB lrwxr-xr-x 2026-10-21 08:52:46
Edit Download
79.85 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
43.55 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
2.08 MB lrwxr-xr-x 2025-03-12 19:11:27
Edit Download
15.09 KB lrwxr-xr-x 2026-10-11 23:13:48
Edit Download
31.74 KB lrwxr-xr-x 2026-04-04 21:15:43
Edit Download
185.36 KB lrwxr-xr-x 2026-04-04 21:15:42
Edit Download
75.64 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.38 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.35 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
19.16 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
100.40 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
67.91 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
522.29 KB lrwxr-xr-x 2026-08-31 14:49:25
Edit Download
23.23 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
130.86 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
15.69 KB lrwxr-xr-x 2022-10-15 21:29:43
Edit Download
15.69 KB lrwxr-xr-x 2022-10-15 21:29:43
Edit Download
35.49 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
43.62 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
87.79 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
35.98 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
19.34 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
36.03 KB lrwxr-xr-x 2022-02-11 11:52:55
Edit Download
23.23 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
132.27 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
91.84 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
27.25 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
43.68 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
732.07 KB lrwxr-xr-x 2022-02-01 10:44:53
Edit Download
27.28 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
35.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
27.34 KB lrwxr-xr-x 2025-09-21 09:23:49
Edit Download
47.60 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
14.99 KB lrwxr-xr-x 2026-10-08 20:46:41
Edit Download
4.41 KB lrwxr-xr-x 2026-10-27 09:16:25
Edit Download
23.26 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
31.48 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
39.53 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
43.63 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
195.98 KB lrwxr-xr-x 2026-04-09 11:24:07
Edit Download
87.70 KB lrwxr-xr-x 2026-04-09 11:24:07
Edit Download
15.29 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
31.50 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
23.21 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
137.45 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
1.38 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
146 B lrwxr-xr-x 2026-10-06 12:00:21
Edit Download
3.84 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
3.84 MB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
2.07 KB lrwxr-xr-x 2026-10-06 12:00:20
Edit Download
39.41 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
1.42 KB lrwxr-xr-x 2026-10-11 23:08:16
Edit Download
27.87 KB lrwxr-xr-x 2024-04-30 16:43:23
Edit Download
43.53 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
521.21 KB lrwxr-xr-x 2026-09-01 16:41:36
Edit Download
31.84 KB lrwxr-xr-x 2026-04-04 22:15:26
Edit Download
27.89 KB lrwxr-xr-x 2025-08-05 06:19:33
Edit Download
51.59 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
31.47 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
15.13 KB lrwxr-xr-x 2026-10-29 16:53:08
Edit Download
1.05 MB lrwxr-x--- 2026-04-04 22:27:54
Edit Download
1.05 MB lrwxr-x--- 2026-04-04 22:27:54
Edit Download
1.04 MB lrwxr-x--- 2026-04-04 22:27:56
Edit Download
1.04 MB lrwxr-x--- 2026-04-04 22:27:56
Edit Download
64.09 KB lrwxr-xr-x 2024-10-02 21:04:59
Edit Download
23.16 KB lrwxr-xr-x 2026-09-24 21:56:28
Edit Download
80.55 KB lrwxr-xr-x 2026-09-24 21:56:28
Edit Download
39.63 KB lrwxr-xr-x 2026-10-22 18:43:04
Edit Download
31.23 KB lrwxr-xr-x 2026-06-25 00:22:23
Edit Download
4.96 KB lrwxr-xr-x 2022-02-16 08:56:48
Edit Download
19.32 KB lrwxr-xr-x 2026-10-06 12:00:24
Edit Download
31.31 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
1.94 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
1.64 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
6.30 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
33 B lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
33 B lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
2.04 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
7.93 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
221.09 KB lrwxr-xr-x 2023-04-07 14:02:33
Edit Download
75.70 KB lrwxr-xr-x 2023-04-07 14:02:33
Edit Download
2.89 KB lrwxr-xr-x 2008-10-10 17:40:36
Edit Download
195.98 KB lrwxr-xr-x 2026-04-09 11:24:07
Edit Download
67.61 KB lrwxr-xr-x 2023-04-07 14:02:33
Edit Download
63.58 KB lrwxr-xr-x 2023-04-07 14:02:33
Edit Download
2.16 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
1.80 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
4.47 KB lrwxr-xr-x 2026-08-31 16:16:13
Edit Download
0 B ?????????? 2026-11-03 22:03:55
Edit Download
51.63 KB lrwxr-xr-x 2026-09-10 17:32:18
Edit Download
If ZipArchive is unavailable, a .tar will be created (no compression).
© 2026 0xNothings — Secure File Manager. All rights reserved. Built with ❤️ & Tailwind x Dark UI