From d7e67246c6b867dd7982155d1d627365f95e099a Mon Sep 17 00:00:00 2001 From: milisarge Date: Fri, 7 Apr 2017 06:05:02 +0300 Subject: [PATCH] mps.paket-guncelleme --- bin/kirikci.sh | 13 ++++ bin/milis-ldd | 203 +++++++++++++++++++++++++++++++++++++++++++++++++ bin/mps | 4 +- 3 files changed, 218 insertions(+), 2 deletions(-) create mode 100755 bin/kirikci.sh create mode 100755 bin/milis-ldd diff --git a/bin/kirikci.sh b/bin/kirikci.sh new file mode 100755 index 000000000..750191e2b --- /dev/null +++ b/bin/kirikci.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +#butun ld.conf dizinlerini gezmek icin +#for dizin in `ldconfig -v | grep -v ^$'\t'` +#do +# echo $dizin | grep -v '^/' +#done +for sodosya in `ls /usr/bin/*` +do + if [[ $(milis-ldd -d $sodosya | grep not\ found) ]] ;then + echo $sodosya + fi +done diff --git a/bin/milis-ldd b/bin/milis-ldd new file mode 100755 index 000000000..35935cb70 --- /dev/null +++ b/bin/milis-ldd @@ -0,0 +1,203 @@ +#! /bin/bash +# Copyright (C) 1996-2016 Free Software Foundation, Inc. +# This file is part of the GNU C Library. + +# The GNU C Library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. + +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. + +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, see +# . + + +# This is the `ldd' command, which lists what shared libraries are +# used by given dynamically-linked executables. It works by invoking the +# run-time dynamic linker as a command and setting the environment +# variable LD_TRACE_LOADED_OBJECTS to a non-empty value. + +# We should be able to find the translation right at the beginning. +TEXTDOMAIN=libc +TEXTDOMAINDIR=/usr/share/locale + +RTLDLIST="/lib/ld-linux.so.2 /lib64/ld-linux-x86-64.so.2 /libx32/ld-linux-x32.so.2" +warn= +bind_now= +verbose= + +while test $# -gt 0; do + case "$1" in + --vers | --versi | --versio | --version) + echo 'ldd (GNU libc) 2.23' + printf $"Copyright (C) %s Free Software Foundation, Inc. +This is free software; see the source for copying conditions. There is NO +warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +" "2016" + printf $"Written by %s and %s. +" "Roland McGrath" "Ulrich Drepper" + exit 0 + ;; + --h | --he | --hel | --help) + echo $"Usage: ldd [OPTION]... FILE... + --help print this help and exit + --version print version information and exit + -d, --data-relocs process data relocations + -r, --function-relocs process data and function relocations + -u, --unused print unused direct dependencies + -v, --verbose print all information +" + printf $"For bug reporting instructions, please see:\\n%s.\\n" \ + "" + exit 0 + ;; + -d | --d | --da | --dat | --data | --data- | --data-r | --data-re | \ + --data-rel | --data-relo | --data-reloc | --data-relocs) + warn=yes + shift + ;; + -r | --f | --fu | --fun | --func | --funct | --functi | --functio | \ + --function | --function- | --function-r | --function-re | --function-rel | \ + --function-relo | --function-reloc | --function-relocs) + warn=yes + bind_now=yes + shift + ;; + -v | --verb | --verbo | --verbos | --verbose) + verbose=yes + shift + ;; + -u | --u | --un | --unu | --unus | --unuse | --unused) + unused=yes + shift + ;; + --v | --ve | --ver) + echo >&2 $"ldd: option \`$1' is ambiguous" + exit 1 + ;; + --) # Stop option processing. + shift; break + ;; + -*) + echo >&2 'ldd:' $"unrecognized option" "\`$1'" + echo >&2 $"Try \`ldd --help' for more information." + exit 1 + ;; + *) + break + ;; + esac +done + +nonelf () +{ + # Maybe extra code for non-ELF binaries. + return 1; +} + +add_env="LD_TRACE_LOADED_OBJECTS=1 LD_WARN=$warn LD_BIND_NOW=$bind_now" +add_env="$add_env LD_LIBRARY_VERSION=\$verify_out" +add_env="$add_env LD_VERBOSE=$verbose" +if test "$unused" = yes; then + add_env="$add_env LD_DEBUG=\"$LD_DEBUG${LD_DEBUG:+,}unused\"" +fi + +# The following command substitution is needed to make ldd work in SELinux +# environments where the RTLD might not have permission to write to the +# terminal. The extra "x" character prevents the shell from trimming trailing +# newlines from command substitution results. This function is defined as a +# subshell compound list (using "(...)") to prevent parameter assignments from +# affecting the calling shell execution environment. +try_trace() ( + output=$(eval $add_env '"$@"' 2>&1; rc=$?; printf 'x'; exit $rc) + rc=$? + printf '%s' "${output%x}" + return $rc +) + +case $# in +0) + echo >&2 'ldd:' $"missing file arguments" + echo >&2 $"Try \`ldd --help' for more information." + exit 1 + ;; +1) + single_file=t + ;; +*) + single_file=f + ;; +esac + +result=0 +for file do + # We don't list the file name when there is only one. + test $single_file = t || echo "${file}:" + case $file in + */*) : + ;; + *) file=./$file + ;; + esac + if test ! -e "$file"; then + echo "ldd: ${file}:" $"No such file or directory" >&2 + result=1 + elif test ! -f "$file"; then + echo "ldd: ${file}:" $"not regular file" >&2 + result=1 + elif test -r "$file"; then + #test -x "$file" || echo 'ldd:' $"warning: you do not have execution permission for" "\`$file'" >&2 + RTLD= + ret=1 + for rtld in ${RTLDLIST}; do + if test -x $rtld; then + verify_out=`${rtld} --verify "$file"` + ret=$? + case $ret in + [02]) RTLD=${rtld}; break;; + esac + fi + done + case $ret in + 0) + # If the program exits with exit code 5, it means the process has been + # invoked with __libc_enable_secure. Fall back to running it through + # the dynamic linker. + try_trace "$file" + rc=$? + if [ $rc = 5 ]; then + try_trace "$RTLD" "$file" + rc=$? + fi + [ $rc = 0 ] || result=1 + ;; + 1) + # This can be a non-ELF binary or no binary at all. + nonelf "$file" || { + echo $" not a dynamic executable" + result=1 + } + ;; + 2) + try_trace "$RTLD" "$file" || result=1 + ;; + *) + echo 'ldd:' ${RTLD} $"exited with unknown exit code" "($ret)" >&2 + exit 1 + ;; + esac + else + echo 'ldd:' $"error: you do not have read permission for" "\`$file'" >&2 + result=1 + fi +done + +exit $result +# Local Variables: +# mode:ksh +# End: diff --git a/bin/mps b/bin/mps index c92992748..cf7447362 100755 --- a/bin/mps +++ b/bin/mps @@ -422,7 +422,7 @@ surum_kontrol(){ done if [ "$gun_onay" = "e" ];then paket_sil "$1" "evet" - mps -ik $1 + paket_inkur_oto $1 ryaz 33 "$1 sürüm güncellemesi yapıldı" else ryaz 31 "$1 sürüm güncellemesi yapılmadı" @@ -463,7 +463,7 @@ devir_kontrol(){ done if [ "$gun_onay" = "e" ];then paket_sil "$1" "evet" - mps -ik $1 + paket_inkur_oto $1 ryaz 33 "$1 devir güncellemesi yapıldı" else ryaz 31 "$1 devir güncellemesi yapılmadı"