Add scanmem

  • Done
  • quality assurance status badge
Details
2 participants
  • pkill9
  • Ricardo Wurmus
Owner
unassigned
Submitted by
pkill9
Severity
normal

Debbugs page

pkill9 wrote 6 years ago
(name . guix-patches)(address . guix-patches@gnu.org)
E1gvJSt-0003Yh-6H@rmmprod05.runbox
Scanmem is a memory scanner that allows you to find the memory address of a variable in a program by scanning the memory multiple times and seeing what has change or stayed the same since the last scan. It lets you change the variable in that memory address as well.

From 01a9c43ecaee76d39e579d713b82765abe95f719 Mon Sep 17 00:00:00 2001
From: Pkill -9 <pkill9@runbox.com>
Date: Sun, 17 Feb 2019 10:09:52 +0000
Subject: [PATCH] gnu: Add scanmem.

* gnu/packages/debug.scm (scanmem): New variable.
---
gnu/packages/debug.scm | 35 +++++++++++++++++++++++++++++++++++
1 file changed, 35 insertions(+)

Toggle diff (57 lines)
diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm
index 0f4a654e6..dc44f8ddf 100644
--- a/gnu/packages/debug.scm
+++ b/gnu/packages/debug.scm
@@ -30,11 +30,13 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages glib)
#:use-module (gnu packages golang)
#:use-module (gnu packages code)
#:use-module (gnu packages llvm)
#:use-module (gnu packages perl)
#:use-module (gnu packages pretty-print)
+ #:use-module (gnu packages readline)
#:use-module (gnu packages virtualization)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -336,3 +338,36 @@ conditions.")
intercepting file operations and changing random bits in the program's
input. Zzuf's behaviour is deterministic, making it easy to reproduce bugs.")
(license (non-copyleft "http://www.wtfpl.net/txt/copying/"))))
+
+(define-public scanmem
+ (package
+ (name "scanmem")
+ (version "0.17")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/scanmem/scanmem")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "17p8sh0rj8yqz36ria5bp48c8523zzw3y9g8sbm2jwq7sc27i7s9"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("libtool" ,libtool)
+ ("intltool" ,intltool)
+ ("automake" ,automake)
+ ("autoconf" ,autoconf)))
+ (inputs
+ `(("readline" ,readline)))
+ (home-page "https://github.com/scanmem/scanmem")
+ (synopsis "Memory scanner")
+ (description "Scanmem is a debugging utility designed to isolate the address
+ of an arbitrary variable in an executing process. scanmem simply needs to be
+told the pid of the process and the value of the variable at several different
+ times.
+
+After several scans of the process, scanmem isolates the position of the
+variable and allows you to modify its value.")
+ (license gpl3)))
--
2.20.1
Ricardo Wurmus wrote 6 years ago
(address . pkill9@runbox.com)(address . 34512-done@debbugs.gnu.org)
87h8d2y7u7.fsf@elephly.net
<pkill9@runbox.com> writes:

Toggle quote (7 lines)
> Scanmem is a memory scanner that allows you to find the memory address
> of a variable in a program by scanning the memory multiple times and
> seeing what has change or stayed the same since the last scan. It lets
> you change the variable in that memory address as well.
>
> https://github.com/scanmem/scanmem

Thanks. I pushed this to the master branch with commit a778f2700 after
some minor modifications.

The license was incorrect. Parts of it are covered under the LGPLv3+,
others are under GPLv3+.

I added a copyright line for you.

I reformatted the description and made sure that there are two spaces
between sentences. (“guix lint” should have notified you of this.)

~~ Ricardo
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 34512@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 34512
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help