From 0d47952611198ef6b1163f366dc03922d20b1475 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 17 Apr 2024 09:42:04 +0200 Subject: Adding upstream version 7.94+git20230807.3be01efb1+dfsg. Signed-off-by: Daniel Baumann --- nselib/data/jdwp-class/README.txt | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 nselib/data/jdwp-class/README.txt (limited to 'nselib/data/jdwp-class/README.txt') diff --git a/nselib/data/jdwp-class/README.txt b/nselib/data/jdwp-class/README.txt new file mode 100644 index 0000000..aaac1f5 --- /dev/null +++ b/nselib/data/jdwp-class/README.txt @@ -0,0 +1,26 @@ +This directory contains sources and compiled classes +used by jdwp-* scripts. + +All classes must have run() method defined which is +expected to return a string. +Method run() can have arguments, but then the scripts +would need to be modified to add those arguments when +class is injected. As JDWPExecCmd has a run() method +which accepts a string as its argument, see +jdwp-exec script for details of passing the +arguments to a method via JDWP. +Arguments need to be tagged with their respective type. +For other tags see http://docs.oracle.com/javase/6/docs/technotes/guides/jni/spec/types.html#wp9502 . +Example from jdwp-exec: + + local cmdID + status,cmdID = jdwp.createString(socket,0,cmd) + local runArgs = string.pack(">B I8", 0x4c, cmdID) -- 0x4c is object type tag + -- invoke run method + local result + status, result = jdwp.invokeObjectMethod(socket,0,injectedClass.instance,injectedClass.thread,injectedClass.id,runMethodID,1,runArgs) + +To compile these sources: +# javac *.java + + -- cgit v1.2.3