This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH v2] sim: export cb_get_string for people to use


The common sim code provides a useful "get_string" function which reads
a C string out of the target's memory space.  So rename and export it
for other people to use.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>

include/gdb/:
2011-05-26  Mike Frysinger  <vapier@gentoo.org>

	* callback.h (cb_get_string): New prototype.

sim/common/:
2011-05-26  Mike Frysinger  <vapier@gentoo.org>

	* syscall.c (cb_get_string): Rename from "get_string".
	(get_path): Rename get_string call to cb_get_string.
---
v2
	- drop PARAMS

 include/gdb/callback.h |    3 +++
 sim/common/syscall.c   |    6 +++---
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/include/gdb/callback.h b/include/gdb/callback.h
index 296dfc3..6ffb56e 100644
--- a/include/gdb/callback.h
+++ b/include/gdb/callback.h
@@ -329,6 +329,9 @@ int cb_is_stdin (host_callback *, int);
 int cb_is_stdout (host_callback *, int);
 int cb_is_stderr (host_callback *, int);
 
+/* Read a string out of the target.  */
+int cb_get_string (host_callback *, CB_SYSCALL *, char *, int, unsigned long);
+
 /* Perform a system call.  */
 CB_RC cb_syscall (host_callback *, CB_SYSCALL *);
 
diff --git a/sim/common/syscall.c b/sim/common/syscall.c
index 28816c0..1dfe7aa 100644
--- a/sim/common/syscall.c
+++ b/sim/common/syscall.c
@@ -76,8 +76,8 @@ char *simulator_sysroot = "";
 /* Utility of cb_syscall to fetch a path name or other string from the target.
    The result is 0 for success or a host errno value.  */
 
-static int
-get_string (cb, sc, buf, buflen, addr)
+int
+cb_get_string (cb, sc, buf, buflen, addr)
      host_callback *cb;
      CB_SYSCALL *sc;
      char *buf;
@@ -121,7 +121,7 @@ get_path (cb, sc, addr, bufp)
   int result;
   int sysroot_len = strlen (simulator_sysroot);
 
-  result = get_string (cb, sc, buf, MAX_PATH_LEN - sysroot_len, addr);
+  result = cb_get_string (cb, sc, buf, MAX_PATH_LEN - sysroot_len, addr);
   if (result == 0)
     {
       /* Prepend absolute paths with simulator_sysroot.  Relative paths
-- 
1.7.5.rc3


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]