From 03a30fef2671d829154dcc2be3db07e085e1c345 Mon Sep 17 00:00:00 2001 From: alick01 Date: Fri, 21 Oct 2022 22:16:01 +0300 Subject: [PATCH] secure-delete New Package --- util/admin/secure-delete/actions.py | 26 +++++ util/admin/secure-delete/files/cc.patch | 9 ++ util/admin/secure-delete/files/deplibs.patch | 21 +++++ util/admin/secure-delete/files/flush.patch | 15 +++ util/admin/secure-delete/files/makefile.patch | 77 +++++++++++++++ .../secure-delete/files/mode_moderate.patch | 72 ++++++++++++++ util/admin/secure-delete/files/sdmem.patch | 94 +++++++++++++++++++ util/admin/secure-delete/pspec.xml | 44 +++++++++ util/admin/secure-delete/translations.xml | 8 ++ 9 files changed, 366 insertions(+) create mode 100644 util/admin/secure-delete/actions.py create mode 100644 util/admin/secure-delete/files/cc.patch create mode 100644 util/admin/secure-delete/files/deplibs.patch create mode 100644 util/admin/secure-delete/files/flush.patch create mode 100644 util/admin/secure-delete/files/makefile.patch create mode 100644 util/admin/secure-delete/files/mode_moderate.patch create mode 100644 util/admin/secure-delete/files/sdmem.patch create mode 100644 util/admin/secure-delete/pspec.xml create mode 100644 util/admin/secure-delete/translations.xml diff --git a/util/admin/secure-delete/actions.py b/util/admin/secure-delete/actions.py new file mode 100644 index 0000000000..49d34adedf --- /dev/null +++ b/util/admin/secure-delete/actions.py @@ -0,0 +1,26 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +# +# Licensed under the GNU General Public License, version 3. +# See the file http://www.gnu.org/copyleft/gpl.txt. + +from pisi.actionsapi import autotools +from pisi.actionsapi import pisitools +from pisi.actionsapi import shelltools +from pisi.actionsapi import get + +WorkDir = "secure_delete-3.1-a" + +def build(): + shelltools.export("CFLAGS", "%s -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" % get.CFLAGS()) + autotools.make() + +def install(): + autotools.rawInstall("prefix=%s/usr" % get.installDIR()) + + pisitools.doman("*.1") + pisitools.dodoc("CHANGES", "FILES", "README*", "TODO", "*.doc") + + pisitools.rename("/usr/bin/smem", "sdmem") + pisitools.rename("/usr/share/man/man1/smem.1", "sdmem.1") + diff --git a/util/admin/secure-delete/files/cc.patch b/util/admin/secure-delete/files/cc.patch new file mode 100644 index 0000000000..c1d97923d3 --- /dev/null +++ b/util/admin/secure-delete/files/cc.patch @@ -0,0 +1,9 @@ +diff -Nur secure_delete-3.1-old//Makefile secure_delete-3.1/Makefile +--- secure_delete-3.1-old//Makefile 2011-06-20 09:13:27.256001364 +0300 ++++ secure_delete-3.1/Makefile 2011-06-20 09:13:47.349001319 +0300 +@@ -1,4 +1,4 @@ +-CC=gcc ++CC ?= gcc + OPT=$(CFLAGS) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE + #OPT=-Wall -D_DEBUG_ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE + INSTALL_DIR=$(prefix)/bin diff --git a/util/admin/secure-delete/files/deplibs.patch b/util/admin/secure-delete/files/deplibs.patch new file mode 100644 index 0000000000..091fe3f7a7 --- /dev/null +++ b/util/admin/secure-delete/files/deplibs.patch @@ -0,0 +1,21 @@ +diff -Nur secure_delete-3.1-old//Makefile secure_delete-3.1/Makefile +--- secure_delete-3.1-old//Makefile 2011-06-17 12:22:25.383001395 +0300 ++++ secure_delete-3.1/Makefile 2011-06-17 12:22:19.135001323 +0300 +@@ -21,13 +21,13 @@ + sdel-lib.o: sdel-lib.c + $(CC) ${OPT} -c sdel-lib.c + +-srm: srm.c ++srm: srm.c sdel-lib.o + $(CC) ${OPT} -o srm srm.c sdel-lib.o +-sfill: sfill.c ++sfill: sfill.c sdel-lib.o + $(CC) ${OPT} -o sfill sfill.c sdel-lib.o +-sswap: sswap.c ++sswap: sswap.c sdel-lib.o + $(CC) ${OPT} -o sswap sswap.c sdel-lib.o +-smem: smem.c ++smem: smem.c sdel-lib.o + $(CC) ${OPT} -o smem smem.c sdel-lib.o + + clean: diff --git a/util/admin/secure-delete/files/flush.patch b/util/admin/secure-delete/files/flush.patch new file mode 100644 index 0000000000..4532c21d11 --- /dev/null +++ b/util/admin/secure-delete/files/flush.patch @@ -0,0 +1,15 @@ +diff -Nur secure_delete-3.1-old//srm.c secure_delete-3.1/srm.c +--- secure_delete-3.1-old//srm.c 2011-06-16 14:36:13.119001280 +0300 ++++ secure_delete-3.1/srm.c 2011-06-16 14:36:22.264001036 +0300 +@@ -166,8 +166,10 @@ + return 3; + } + +- if (sdel_overwrite(mode, fd, 0, bufsize, filestat.st_size > 0 ? filestat.st_size : 1, zero) == 0) ++ if (sdel_overwrite(mode, fd, 0, bufsize, filestat.st_size > 0 ? filestat.st_size : 1, zero) == 0) { ++ close(fd); + return sdel_unlink(filename, 0, 1, slow); ++ } + } /* end IS_REG() */ + else { + if (S_ISDIR(filestat.st_mode)) { diff --git a/util/admin/secure-delete/files/makefile.patch b/util/admin/secure-delete/files/makefile.patch new file mode 100644 index 0000000000..8127043e40 --- /dev/null +++ b/util/admin/secure-delete/files/makefile.patch @@ -0,0 +1,77 @@ +diff -Nur secure_delete-3.1-old//Makefile secure_delete-3.1/Makefile +--- secure_delete-3.1-old//Makefile 2011-06-16 14:36:13.119001280 +0300 ++++ secure_delete-3.1/Makefile 2011-06-16 14:36:22.263001009 +0300 +@@ -1,19 +1,19 @@ + CC=gcc +-OPT=-O2 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE ++OPT=$(CFLAGS) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE + #OPT=-Wall -D_DEBUG_ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE +-INSTALL_DIR=/usr/local/bin ++INSTALL_DIR=$(prefix)/bin + MAN_DIR=/usr/local/man + DOC_DIR=/usr/share/doc/secure_delete + OPT_MOD=-D__KERNEL__ -DMODULE -fomit-frame-pointer -fno-strict-aliasing -pipe -mpreferred-stack-boundary=2 + #LD_MOD=-r + +-all: sdel-lib.o srm sfill sswap smem sdel-mod.o +- @echo +- @echo "A Puritan is someone who is deathly afraid that someone, somewhere, is" +- @echo "having fun." +- @echo +- @echo "I hope YOU have fun!" +- @echo ++all: sdel-lib.o srm sfill sswap smem ++# @echo ++# @echo "A Puritan is someone who is deathly afraid that someone, somewhere, is" ++# @echo "having fun." ++# @echo ++# @echo "I hope YOU have fun!" ++# @echo + + sdel-mod.o: sdel-mod.c + $(CC) $(OPT) $(OPT_MOD) $(LD_MOD) -I/lib/modules/`uname -r`/build/include -c sdel-mod.c +@@ -23,32 +23,28 @@ + + srm: srm.c + $(CC) ${OPT} -o srm srm.c sdel-lib.o +- -strip srm + sfill: sfill.c + $(CC) ${OPT} -o sfill sfill.c sdel-lib.o +- -strip sfill + sswap: sswap.c + $(CC) ${OPT} -o sswap sswap.c sdel-lib.o +- -strip sswap + smem: smem.c + $(CC) ${OPT} -o smem smem.c sdel-lib.o +- -strip smem + + clean: + rm -f sfill srm sswap smem sdel sdel-lib.o sdel-mod.o core *~ + + install: all + mkdir -p -m 755 ${INSTALL_DIR} 2> /dev/null +- rm -f sdel && ln -s srm sdel +- cp -f sdel srm sfill sswap smem the_cleaner.sh ${INSTALL_DIR} +- chmod 711 ${INSTALL_DIR}/srm ${INSTALL_DIR}/sfill ${INSTALL_DIR}/sswap ${INSTALL_DIR}/smem ${INSTALL_DIR}/the_cleaner.sh +- mkdir -p -m 755 ${MAN_DIR}/man1 2> /dev/null +- cp -f srm.1 sfill.1 sswap.1 smem.1 ${MAN_DIR}/man1 +- chmod 644 ${MAN_DIR}/man1/srm.1 ${MAN_DIR}/man1/sfill.1 ${MAN_DIR}/man1/sswap.1 ${MAN_DIR}/man1/smem.1 +- mkdir -p -m 755 ${DOC_DIR} 2> /dev/null +- cp -f CHANGES FILES README secure_delete.doc usenix6-gutmann.doc ${DOC_DIR} +- -test -e sdel-mod.o && cp -f sdel-mod.o /lib/modules/`uname -r`/kernel/drivers/char ++# rm -f sdel && ln -s srm sdel ++ cp -f srm sfill sswap smem ${INSTALL_DIR} ++ chmod 711 ${INSTALL_DIR}/srm ${INSTALL_DIR}/sfill ${INSTALL_DIR}/sswap ${INSTALL_DIR}/smem ++# mkdir -p -m 755 ${MAN_DIR}/man1 2> /dev/null ++# cp -f srm.1 sfill.1 sswap.1 smem.1 ${MAN_DIR}/man1 ++# chmod 644 ${MAN_DIR}/man1/srm.1 ${MAN_DIR}/man1/sfill.1 ${MAN_DIR}/man1/sswap.1 ${MAN_DIR}/man1/smem.1 ++# mkdir -p -m 755 ${DOC_DIR} 2> /dev/null ++# cp -f CHANGES FILES README secure_delete.doc usenix6-gutmann.doc ${DOC_DIR} ++# -test -e sdel-mod.o && cp -f sdel-mod.o /lib/modules/`uname -r`/kernel/drivers/char + # @-test '!' -e sdel-mod.o -a `uname -s` = 'Linux' && echo "type \"make sdel-mod install\" to compile and install the Linux loadable kernel module for secure delete" +- @echo +- @echo "If men could get pregnant, abortion would be a sacrament." +- @echo ++# @echo ++# @echo "If men could get pregnant, abortion would be a sacrament." ++# @echo diff --git a/util/admin/secure-delete/files/mode_moderate.patch b/util/admin/secure-delete/files/mode_moderate.patch new file mode 100644 index 0000000000..561a7e4ccc --- /dev/null +++ b/util/admin/secure-delete/files/mode_moderate.patch @@ -0,0 +1,72 @@ +diff -Nur secure_delete-3.1-old/smem.1 secure_delete-3.1/smem.1 +--- secure_delete-3.1-old/smem.1 2011-06-20 16:31:36.890599669 +0300 ++++ secure_delete-3.1/smem.1 2011-06-20 16:37:11.867622820 +0300 +@@ -9,7 +9,7 @@ + sdmem \- secure memory wiper (secure_deletion toolkit) + + .SH SYNOPSIS +-.B sdmem [-f] [-l] [-l] [-v] ++.B sdmem [-f] [-l] [-l] [-m] [-v] + + .SH DESCRIPTION + .I sdmem +@@ -54,6 +54,9 @@ + -l for a second time lessons the security even more: only one pass with + 0x00 is written. + .TP ++.B \-m ++moderate security. Five passes are written. ++.TP + .B \-v + verbose mode + .PP +diff -Nur secure_delete-3.1-old/smem.c secure_delete-3.1/smem.c +--- secure_delete-3.1-old/smem.c 2011-06-20 16:31:36.889599617 +0300 ++++ secure_delete-3.1/smem.c 2011-06-20 16:32:58.805684329 +0300 +@@ -46,6 +46,7 @@ + printf("Options:\n"); + printf("\t-f fast (and insecure mode): no /dev/urandom.\n"); + printf("\t-l lessens the security (use twice for total insecure mode).\n"); ++ printf("\t-m moderate security (5 writes).\n"); + printf("\t-v is verbose mode.\n"); + printf("\nsmem does a secure overwrite of the memory (RAM), because memory contents can\n"); + printf("be recovered even after a shutdown! Default is secure mode (38 writes).\n"); +@@ -127,7 +128,19 @@ + alarm(600); /* needed to prevent mem caching */ + + while ( (ptr = calloc(4096, 16)) != NULL) { +- if (mode > 0) { ++ if (mode == 3) { ++ __sdel_fill_buf(write_modes[0], BLOCKSIZE + 2, buf); ++ memcpy(ptr, buf, BLOCKSIZE); ++ __sdel_fill_buf(write_modes[1], BLOCKSIZE + 2, buf); ++ memcpy(ptr, buf, BLOCKSIZE); ++ __sdel_random_buf(BLOCKSIZE + 2, buf); ++ memcpy(ptr, buf, BLOCKSIZE); ++ __sdel_fill_buf(write_modes[0], BLOCKSIZE + 2, buf); ++ memcpy(ptr, buf, BLOCKSIZE); ++ __sdel_fill_buf(write_modes[1], BLOCKSIZE + 2, buf); ++ memcpy(ptr, buf, BLOCKSIZE); ++ } ++ else if (mode > 0) { + for (turn=0; turn<=36; turn++) { + if ((mode == 1) && (turn > 0)) break; + if ((turn>=5) && (turn<=31)) { +@@ -170,7 +183,7 @@ + help(); + + while (1) { +- result = getopt(argc, argv, "FfLlSsVvZz"); ++ result = getopt(argc, argv, "FfLlmSsVvZz"); + if (result<0) break; + switch (result) { + case 'F' : +@@ -179,6 +192,8 @@ + case 'L' : + case 'l' : if (secure) secure--; + break; ++ case 'm' : secure = 3; ++ break; + case 'S' : + case 's' : secure++; + break; diff --git a/util/admin/secure-delete/files/sdmem.patch b/util/admin/secure-delete/files/sdmem.patch new file mode 100644 index 0000000000..4de6daf40f --- /dev/null +++ b/util/admin/secure-delete/files/sdmem.patch @@ -0,0 +1,94 @@ +diff -Nur secure_delete-3.1-old//sfill.1 secure_delete-3.1/sfill.1 +--- secure_delete-3.1-old//sfill.1 2011-06-16 14:36:13.119001280 +0300 ++++ secure_delete-3.1/sfill.1 2011-06-16 14:36:22.264001036 +0300 +@@ -130,5 +130,5 @@ + (1), + .I sswap + (1), +-.I smem ++.I sdmem + (1) +diff -Nur secure_delete-3.1-old//smem.1 secure_delete-3.1/smem.1 +--- secure_delete-3.1-old//smem.1 2011-06-16 14:36:13.119001280 +0300 ++++ secure_delete-3.1/smem.1 2011-06-16 14:36:22.264001036 +0300 +@@ -3,16 +3,16 @@ + .if n .sp + .if t .sp 0.4 + .. +-.TH SMEM 1 ++.TH SDMEM 1 + + .SH NAME +-smem \- secure memory wiper (secure_deletion toolkit) ++sdmem \- secure memory wiper (secure_deletion toolkit) + + .SH SYNOPSIS +-.B smem [-f] [-l] [-l] [-v] ++.B sdmem [-f] [-l] [-l] [-v] + + .SH DESCRIPTION +-.I smem ++.I sdmem + is designed to delete data which may lie still in your memory (RAM) + in a secure manner which can not be recovered by thiefs, law enforcement + or other threats. +@@ -24,7 +24,7 @@ + .PP + The + .I secure data deletion +-process of smem goes like this: ++process of sdmem goes like this: + .PP + .TP + .B * +@@ -58,13 +58,19 @@ + verbose mode + .PP + ++.SH NOTE ++.TP ++This utility was originally called ++.I sdmem ++but was renamed for debian to avoid name clashes with another package. ++ + .SH BEWARE + .TP + .B SLOW +-Wiping the memory is very slow. You might use smem with the -ll option. (tip) ++Wiping the memory is very slow. You might use sdmem with the -ll option. (tip) + .TP + .B BETA! +-.I smem ++.I sdmem + is still beta. + + .PP +@@ -84,7 +90,7 @@ + can be obtained from + .I http://www.thc.org + .Sp +-.I smem ++.I sdmem + and the + .I secure_deletion package + is (C) 1997-2003 by van Hauser / THC (vh@thc.org) +diff -Nur secure_delete-3.1-old//srm.1 secure_delete-3.1/srm.1 +--- secure_delete-3.1-old//srm.1 2011-06-16 14:36:13.119001280 +0300 ++++ secure_delete-3.1/srm.1 2011-06-16 14:36:22.265001067 +0300 +@@ -136,5 +136,5 @@ + (1), + .I sswap + (1), +-.I smem ++.I sdmem + (1) +diff -Nur secure_delete-3.1-old//sswap.1 secure_delete-3.1/sswap.1 +--- secure_delete-3.1-old//sswap.1 2011-06-16 14:36:13.119001280 +0300 ++++ secure_delete-3.1/sswap.1 2011-06-16 14:36:22.263001009 +0300 +@@ -106,5 +106,5 @@ + (1), + .I sfill + (1), +-.I smem ++.I sdmem + (1) diff --git a/util/admin/secure-delete/pspec.xml b/util/admin/secure-delete/pspec.xml new file mode 100644 index 0000000000..a49a681159 --- /dev/null +++ b/util/admin/secure-delete/pspec.xml @@ -0,0 +1,44 @@ + + + + + secure-delete + https://github.com/GIJack/secure_delete + + PisiLinux Community + admins@pisilinux.org + + GPLv2 + app:console + Secure delete utilities + Secure file/disk/swap/memory erasure utilities. + https://github.com/GIJack/secure_delete/archive/refs/tags/3.1-a.tar.gz + + makefile.patch + deplibs.patch + flush.patch + sdmem.patch + cc.patch + mode_moderate.patch + + + + + secure-delete + + /usr/bin + /usr/share/doc/secure-delete + /usr/share/man + + + + + + 2022-10-20 + 3.1 + First release + Ali Cengiz Kurt + alicengizkurt@gmail.com + + + diff --git a/util/admin/secure-delete/translations.xml b/util/admin/secure-delete/translations.xml new file mode 100644 index 0000000000..f57723f34c --- /dev/null +++ b/util/admin/secure-delete/translations.xml @@ -0,0 +1,8 @@ + + + + secure-delete + Güvenli silme araçları + Güvenli dosya/disk/takas alanı/hafıza silme araçları. + +