dyninst.git
13 years agoMarked certain BPatch_edge functions as public (and locked) to agree with
legendre [Thu, 22 Mar 2007 19:56:19 +0000 (19:56 +0000)]
Marked certain BPatch_edge functions as public (and locked) to agree with
manual

13 years agoFixed Windows Paradyn build problem involving function implementation in the
legendre [Thu, 22 Mar 2007 19:56:15 +0000 (19:56 +0000)]
Fixed Windows Paradyn build problem involving function implementation in the
Time.h header file accesses non-exported functionality from libcommon

13 years agoFixed Windows Paradyn build problem involving the unused debug_ostream
legendre [Thu, 22 Mar 2007 19:56:13 +0000 (19:56 +0000)]
Fixed Windows Paradyn build problem involving the unused debug_ostream

13 years agoFix paradynd segfault on x86 stemming from libcommon changes
legendre [Thu, 22 Mar 2007 19:56:12 +0000 (19:56 +0000)]
Fix paradynd segfault on x86 stemming from libcommon changes

13 years agoFix user reported compilation problems with Ubuntu's gcc 4.1.2, but doesn't
legendre [Thu, 22 Mar 2007 19:56:09 +0000 (19:56 +0000)]
Fix user reported compilation problems with Ubuntu's gcc 4.1.2, but doesn't
happen with our versions of same compiler.

13 years agoFix O|SS reported segfault where we had a common block with a name interfering
legendre [Thu, 22 Mar 2007 19:56:08 +0000 (19:56 +0000)]
Fix O|SS reported segfault where we had a common block with a name interfering
with another symbol of the same name and causing a segfault.

13 years agoO|SS reported bug where the "attach before main" code was not handling the case
legendre [Thu, 22 Mar 2007 19:56:07 +0000 (19:56 +0000)]
O|SS reported bug where the "attach before main" code was not handling the case
where the /lib/ld-x.x.x.so library was split up in the address space.  Some parts
of the ld-x.x.x.so were appearing low, followed by other mmap regions,
followed by the rest of ld-x.x.x.so

13 years agoFix bug with "attach before main" where we wouldn't recognize the dynamic loader
legendre [Thu, 22 Mar 2007 19:56:06 +0000 (19:56 +0000)]
Fix bug with "attach before main" where we wouldn't recognize the dynamic loader
library on AMD64

13 years agoRemoved debugging statement that was printing free'd memory during SignalHandler
legendre [Thu, 22 Mar 2007 19:56:05 +0000 (19:56 +0000)]
Removed debugging statement that was printing free'd memory during SignalHandler
exit

13 years agoFix a bug where an inserted and removed exit callback could cause a crash
legendre [Thu, 22 Mar 2007 19:56:04 +0000 (19:56 +0000)]
Fix a bug where an inserted and removed exit callback could cause a crash

13 years agoCast (void *) to (const char *) instead of (Word *) to correctly use pointer arithmetic.
rchen [Tue, 20 Mar 2007 23:32:58 +0000 (23:32 +0000)]
Cast (void *) to (const char *) instead of (Word *) to correctly use pointer arithmetic.

13 years agokill warning about variable overshadowing
darnold [Tue, 20 Mar 2007 23:20:21 +0000 (23:20 +0000)]
kill warning about variable overshadowing

13 years agouse proper "IOCGIFCONF" ioctl request based on compiler
darnold [Tue, 20 Mar 2007 23:20:20 +0000 (23:20 +0000)]
use proper "IOCGIFCONF" ioctl request based on compiler

13 years agouse proper fields of iovec struct based on compiler
darnold [Tue, 20 Mar 2007 23:20:19 +0000 (23:20 +0000)]
use proper fields of iovec struct based on compiler

13 years agouse AR and ARFLAGS from autoconf
darnold [Tue, 20 Mar 2007 23:20:18 +0000 (23:20 +0000)]
use AR and ARFLAGS from autoconf

13 years agoisambiguate "pow" function for sun compiler
darnold [Tue, 20 Mar 2007 23:20:17 +0000 (23:20 +0000)]
isambiguate "pow" function for sun compiler

13 years agoxtern "C" added to quiet sun compiler
darnold [Tue, 20 Mar 2007 23:20:15 +0000 (23:20 +0000)]
xtern "C" added to quiet sun compiler

13 years agoconvert from windows to unix text format
darnold [Tue, 20 Mar 2007 23:20:14 +0000 (23:20 +0000)]
convert from windows to unix text format

13 years agodon't use void * for func ptrs. void(*)() ptr instead
darnold [Tue, 20 Mar 2007 23:20:12 +0000 (23:20 +0000)]
don't use void * for func ptrs. void(*)() ptr instead

13 years agoproperly identify and use (gnu,forte,xlc) compiler types
darnold [Tue, 20 Mar 2007 23:20:07 +0000 (23:20 +0000)]
properly identify and use (gnu,forte,xlc) compiler types

13 years agoFixes for windows build - - - - - - - - - - - - - - - - - - - - - - - -
darnold [Thu, 15 Mar 2007 20:17:50 +0000 (20:17 +0000)]
Fixes for windows build  - - - - - - - - - - - - - - - - - - - - - - - -
Public interface funcs DLLEXPORT'ed

13 years agoFixes for windows build - - - - - - - - - - - - - - - - - - - - - - - -
darnold [Thu, 15 Mar 2007 20:17:43 +0000 (20:17 +0000)]
Fixes for windows build  - - - - - - - - - - - - - - - - - - - - - - - -
Configuration changes for Visual studio project files

13 years ago[Get,Find]*() functions take output parameter and return int "failure/success" val
darnold [Thu, 15 Mar 2007 20:11:07 +0000 (20:11 +0000)]
[Get,Find]*() functions take output parameter and return int "failure/success" val
[Get,Find]*() functions now longer assign default "localhost" value to input hostnames
FindNetworkAddress() moved from NetUtils.c
Added GetNumberofLocalNetworkInterfaces() and GetLocalNetworkInterfaces()
Function implementations modified to use getaddrinfo() instead of gethostbyname()

13 years agoAdded FindNumberofLocalNetworkInterfaces() and FindLocalNetworkInterfaces()
darnold [Thu, 15 Mar 2007 20:11:06 +0000 (20:11 +0000)]
Added FindNumberofLocalNetworkInterfaces() and FindLocalNetworkInterfaces()

13 years agoFindNetworkAddress() moved to NetUtils.c
darnold [Thu, 15 Mar 2007 20:11:05 +0000 (20:11 +0000)]
FindNetworkAddress() moved to NetUtils.c
Added FindNumberofLocalNetworkInterfaces() and FindLocalNetworkInterfaces()

13 years agoMinor "tabification"
darnold [Thu, 15 Mar 2007 20:11:04 +0000 (20:11 +0000)]
Minor "tabification"

13 years agoNetworkAddress::operator==() added
darnold [Thu, 15 Mar 2007 20:11:03 +0000 (20:11 +0000)]
NetworkAddress::operator==() added
IsLocalHost() now takes string, and implementation changed
[Get,Find]*() functions take output parameter and return int "failure/success" val
[Get,Find]*() functions now longer assign default "localhost" value to input hostnames

13 years agoDisable native compilers
darnold [Thu, 15 Mar 2007 20:11:01 +0000 (20:11 +0000)]
Disable native compilers

13 years agoupdate to new BE constructor signature
darnold [Thu, 15 Mar 2007 20:10:56 +0000 (20:10 +0000)]
update to new BE constructor signature

13 years agoAdd #include <malloc.h> for windows happiness
darnold [Thu, 15 Mar 2007 20:10:55 +0000 (20:10 +0000)]
Add #include <malloc.h> for windows happiness

13 years agoLocalhost name added to cmd line args (useful for multihomed hosts)
darnold [Thu, 15 Mar 2007 20:10:54 +0000 (20:10 +0000)]
Localhost name added to cmd line args (useful for multihomed hosts)
GetHostName() interface change

13 years agoRemove getHostName(), getDomainName(), getNetworkName(), getNetworkAddr(). Use xplat...
darnold [Thu, 15 Mar 2007 20:10:52 +0000 (20:10 +0000)]
Remove getHostName(), getDomainName(), getNetworkName(), getNetworkAddr(). Use xplat instead.

13 years agoGetNetworkName(), GetHostName() interface change
darnold [Thu, 15 Mar 2007 20:10:51 +0000 (20:10 +0000)]
GetNetworkName(), GetHostName() interface change
Localhost name added to cmd line args for internal and back-end nodes (useful for multihomed hosts)

13 years agoBE constructor now takes name of localhost (useful for multihomed hosts)
darnold [Thu, 15 Mar 2007 20:10:50 +0000 (20:10 +0000)]
BE constructor now takes name of localhost (useful for multihomed hosts)

13 years agoBE constructor now takes name of localhost (useful for multihomed hosts)
darnold [Thu, 15 Mar 2007 20:10:49 +0000 (20:10 +0000)]
BE constructor now takes name of localhost (useful for multihomed hosts)
GetNetworkName(), GetHostName() interface change

13 years agoGetNetworkName(), GetHostName() interface change
darnold [Thu, 15 Mar 2007 20:10:47 +0000 (20:10 +0000)]
GetNetworkName(), GetHostName() interface change

13 years agoorig. BE constructor now takes name of localhost (useful for multihomed hosts)
darnold [Thu, 15 Mar 2007 20:10:45 +0000 (20:10 +0000)]
orig. BE constructor now takes name of localhost (useful for multihomed hosts)
add BE constructor Network(int argc, char **argv ) for convenience

13 years agoupdate to current version, 2006-10-14.15
darnold [Thu, 15 Mar 2007 20:10:44 +0000 (20:10 +0000)]
update to current version, 2006-10-14.15

13 years agochange how flex lib is specified (file instead of dir)
darnold [Thu, 15 Mar 2007 20:10:42 +0000 (20:10 +0000)]
change how flex lib is specified (file instead of dir)
disable native compilers

13 years agoUpdate release notes & supported platforms
darnold [Thu, 15 Mar 2007 20:10:40 +0000 (20:10 +0000)]
Update release notes & supported platforms

13 years agoChange funcsByEntryOffset to hold vector of symbols per offset instead one symbol...
giri [Wed, 14 Mar 2007 20:10:44 +0000 (20:10 +0000)]
Change funcsByEntryOffset to hold vector of symbols per offset instead one symbol per offset

13 years agoFixed some testsuite issues pointed out by Jim Galarowicz - - - - - - -
cooksey [Thu, 8 Mar 2007 16:28:34 +0000 (16:28 +0000)]
Fixed some testsuite issues pointed out by Jim Galarowicz  - - - - - - -
Fix issue where a 64-bit void * was cast directly to an int.  Now we cast it
to a long, then to an int.

13 years agoFixed some testsuite issues pointed out by Jim Galarowicz - - - - - - -
cooksey [Thu, 8 Mar 2007 16:28:31 +0000 (16:28 +0000)]
Fixed some testsuite issues pointed out by Jim Galarowicz  - - - - - - -
Remove requirement for DYNINST_ROOT, PARADYN_BASE, or PDSCRDIR environment
variables.  We now use what Matt and I think are reasonable defaults if the
variables are undefined.  PARADYN_BASE and PDSCRDIR default to paths based
on DYNINST_ROOT, if it's defined.  If not, we use defaults relative to the
current working directory and print a warning message letting the user know
that they should define the DYNINST_ROOT directory.

13 years agoTurns out that some users find that sleeping for 5 minutes when a SIGSEGV
jaw [Fri, 2 Mar 2007 04:29:32 +0000 (04:29 +0000)]
Turns out that some users find that sleeping for 5 minutes when a SIGSEGV
is received is contrary to their usage needs (based on one specific case
of error recover code).

This leaves the default value untouched, but if a user specifies
SLEEP_ON_MUTATEE_CRASH=<seconds> as an env var, it overrides the default
value.

13 years agoAdd table entry for newly discovered version of struct pthread.
nater [Tue, 27 Feb 2007 16:22:13 +0000 (16:22 +0000)]
Add table entry for newly discovered version of struct pthread.

13 years agoUpdate DWARF to architecture register mapping for IA-32 and AMD-64 - - -
nater [Tue, 27 Feb 2007 16:22:06 +0000 (16:22 +0000)]
Update DWARF to architecture register mapping for IA-32 and AMD-64  - - -
Limit DWARF-"machine" mapping to the range of registers we understand

13 years agoLink with libcommon, libsymtabAPI, libdyninstAPI, libelf, libdwarf(if applicable)
giri [Fri, 23 Feb 2007 00:14:39 +0000 (00:14 +0000)]
Link with libcommon, libsymtabAPI, libdyninstAPI, libelf, libdwarf(if applicable)

13 years agoRemove the -R options from build line
giri [Fri, 23 Feb 2007 00:14:29 +0000 (00:14 +0000)]
Remove the -R options from build line

13 years agoMakefile changes to force the loader to record the path for dynamically linked libraries
giri [Wed, 21 Feb 2007 22:37:53 +0000 (22:37 +0000)]
Makefile changes to force the loader to record the path for dynamically linked libraries
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Add a -R option with the directory path to the loader and clean up some unwanted options

13 years agoMakefile changes to force the loader to record the path for dynamically linked libraries
giri [Wed, 21 Feb 2007 22:37:48 +0000 (22:37 +0000)]
Makefile changes to force the loader to record the path for dynamically linked libraries
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Build libcommon without linking with libelf/libdwarf

13 years agoMakefile changes to force the loader to record the path for dynamically linked libraries
giri [Wed, 21 Feb 2007 22:37:47 +0000 (22:37 +0000)]
Makefile changes to force the loader to record the path for dynamically linked libraries
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Add a new SymtabAPI target

13 years agoWhen debug printing in handleCritical, print the signal number
legendre [Wed, 21 Feb 2007 17:30:07 +0000 (17:30 +0000)]
When debug printing in handleCritical, print the signal number

13 years agoAdd DYNINST_DEBUG_WRITE
legendre [Wed, 21 Feb 2007 17:30:02 +0000 (17:30 +0000)]
Add DYNINST_DEBUG_WRITE

13 years agoAdd isValid check to getName
legendre [Mon, 19 Feb 2007 21:20:38 +0000 (21:20 +0000)]
Add isValid check to getName

13 years agoFix print statement segfault
legendre [Mon, 19 Feb 2007 21:06:32 +0000 (21:06 +0000)]
Fix print statement segfault

13 years agoThe default constuctor of Dyn_Symbol wasn't NULLing values
legendre [Mon, 19 Feb 2007 20:49:13 +0000 (20:49 +0000)]
The default constuctor of Dyn_Symbol wasn't NULLing values

13 years agoFixed malformed debuging print statement
legendre [Mon, 19 Feb 2007 20:49:12 +0000 (20:49 +0000)]
Fixed malformed debuging print statement

13 years agoFixed some remaining issues with the attach before main fix on IA-64
legendre [Mon, 19 Feb 2007 20:49:10 +0000 (20:49 +0000)]
Fixed some remaining issues with the attach before main fix on IA-64

13 years agoFix issue where we'd leave garbage image_funcs in our data structures
legendre [Mon, 19 Feb 2007 20:49:08 +0000 (20:49 +0000)]
Fix issue where we'd leave garbage image_funcs in our data structures

13 years agoFix IBM_BATCH_COMPAT compilation error
legendre [Mon, 19 Feb 2007 20:49:06 +0000 (20:49 +0000)]
Fix IBM_BATCH_COMPAT compilation error

13 years agoMove getModuleLanguageInfo function from Dyn_Symtab to Object - - - - -
giri [Thu, 15 Feb 2007 23:30:44 +0000 (23:30 +0000)]
Move getModuleLanguageInfo function from Dyn_Symtab to Object  - - - - -
Add getModuleLangugaeInfo for every format to Object class

13 years agoMove getModuleLanguageInfo function from Dyn_Symtab to Object - - - - -
giri [Thu, 15 Feb 2007 23:30:42 +0000 (23:30 +0000)]
Move getModuleLanguageInfo function from Dyn_Symtab to Object  - - - - -
Remove getModuleLanguageInfo from Dyn_Symtab class

13 years agoFix problem where casts where reference parameters weren't updating a cast
legendre [Thu, 15 Feb 2007 20:18:08 +0000 (20:18 +0000)]
Fix problem where casts where reference parameters weren't updating a cast
pointer.

13 years agoRemoved possible confusion between POWER/AIX and POWER/Linux
bernat [Thu, 15 Feb 2007 00:44:01 +0000 (00:44 +0000)]
Removed possible confusion between POWER/AIX and POWER/Linux

13 years agoatt
legendre [Thu, 15 Feb 2007 00:21:35 +0000 (00:21 +0000)]
att

13 years agoAdded test file dynNM.
bernat [Wed, 14 Feb 2007 23:17:12 +0000 (23:17 +0000)]
Added test file dynNM.

13 years agoAdded PPC/Linux platform support.
bernat [Wed, 14 Feb 2007 23:17:05 +0000 (23:17 +0000)]
Added PPC/Linux platform support.

13 years agoExtended operator << for Dyn_Symbol class
bernat [Wed, 14 Feb 2007 23:16:57 +0000 (23:16 +0000)]
Extended operator << for Dyn_Symbol class

13 years agoAdded Makefile for PPC/Linux platform
bernat [Wed, 14 Feb 2007 23:16:44 +0000 (23:16 +0000)]
Added Makefile for PPC/Linux platform

13 years agoFixed an issue where the process would fork a script, and we'd mistake
legendre [Wed, 14 Feb 2007 23:04:18 +0000 (23:04 +0000)]
Fixed an issue where the process would fork a script, and we'd mistake
the script for a binary.

13 years agoFix an issue where two image_instPoints at one location where causing us to
legendre [Wed, 14 Feb 2007 23:04:17 +0000 (23:04 +0000)]
Fix an issue where two image_instPoints at one location where causing us to
corrupt our internal data structures

13 years agoHandle issues related to RHEL4's ssh being a shared library, not an a.out
legendre [Wed, 14 Feb 2007 23:04:10 +0000 (23:04 +0000)]
Handle issues related to RHEL4's ssh being a shared library, not an a.out

13 years agoComment out warning that's okay
legendre [Wed, 14 Feb 2007 23:04:09 +0000 (23:04 +0000)]
Comment out warning that's okay

13 years agoRemoved incorrect assert
legendre [Wed, 14 Feb 2007 23:04:08 +0000 (23:04 +0000)]
Removed incorrect assert

13 years agoFix issue when attach to a process that hasn't yet reached main
legendre [Wed, 14 Feb 2007 23:04:02 +0000 (23:04 +0000)]
Fix issue when attach to a process that hasn't yet reached main

13 years agoFixed bug where we clean-up a BPatch_module before reporting it as removed
legendre [Wed, 14 Feb 2007 23:04:01 +0000 (23:04 +0000)]
Fixed bug where we clean-up a BPatch_module before reporting it as removed

13 years agoRemoved internal #define from external header file
legendre [Wed, 14 Feb 2007 23:03:58 +0000 (23:03 +0000)]
Removed internal #define from external header file

13 years agoRefactor symtabAPI include files
legendre [Wed, 14 Feb 2007 23:03:35 +0000 (23:03 +0000)]
Refactor symtabAPI include files

13 years agoClean up #define's in common and symtab
legendre [Wed, 14 Feb 2007 23:03:10 +0000 (23:03 +0000)]
Clean up #define's in common and symtab

13 years agoAdded -Dcap_dwarf
legendre [Wed, 14 Feb 2007 23:03:09 +0000 (23:03 +0000)]
Added -Dcap_dwarf

13 years agosolaris Bug fixes - - - - - - - - - - - - - - - - - - - - - - - - - - -
giri [Wed, 14 Feb 2007 20:32:55 +0000 (20:32 +0000)]
solaris Bug fixes  - - - - - - - - - - - - - - - - - - - - - - - - - - -
Fix a bug where the jump targets on solaris were found without checking if the destination register of the instruction matches the source of the indirect jump.

13 years agosolaris Bug fixes - - - - - - - - - - - - - - - - - - - - - - - - - - -
giri [Wed, 14 Feb 2007 20:32:53 +0000 (20:32 +0000)]
solaris Bug fixes  - - - - - - - - - - - - - - - - - - - - - - - - - - -
Fix a bug where we were asserting when there is no symbol name in the stab string.

13 years agoMove header files from /h to /src - - - - - - - - - - - - - - - - - - -
giri [Mon, 5 Feb 2007 21:14:27 +0000 (21:14 +0000)]
Move header files from /h to /src  - - - - - - - - - - - - - - - - - - -
Moved to /src

13 years agoMove header files from /h to /src - - - - - - - - - - - - - - - - - - -
giri [Mon, 5 Feb 2007 21:14:20 +0000 (21:14 +0000)]
Move header files from /h to /src  - - - - - - - - - - - - - - - - - - -
Change header file path

13 years agoRemove warnings
legendre [Mon, 29 Jan 2007 18:22:17 +0000 (18:22 +0000)]
Remove warnings

13 years agoFix build problems with gcc 4.0.1
legendre [Mon, 29 Jan 2007 18:22:16 +0000 (18:22 +0000)]
Fix build problems with gcc 4.0.1

13 years agoFix Casting problems on RedHat's gcc 4.1.1 on AMD64
legendre [Mon, 29 Jan 2007 18:22:15 +0000 (18:22 +0000)]
Fix Casting problems on RedHat's gcc 4.1.1 on AMD64

13 years agoUse paths relative to core when refering to files
legendre [Mon, 29 Jan 2007 18:22:12 +0000 (18:22 +0000)]
Use paths relative to core when refering to files

13 years agoFix in-lined tramp/catchup problem
bernat [Thu, 25 Jan 2007 22:23:54 +0000 (22:23 +0000)]
Fix in-lined tramp/catchup problem
dyninstAPI/src/BPatch_process.C
dyninstAPI/src/instPoint.C
dyninstAPI/src/instPoint.h
dyninstAPI/src/miniTramp.C
dyninstAPI/src/miniTramp.h
dyninstAPI/src/multiTramp.C
dyninstAPI/src/multiTramp.h  - - - - - - - - - - - - - - - - - - - - - -

13 years agoacknowledge our contributors
darnold [Thu, 25 Jan 2007 21:20:42 +0000 (21:20 +0000)]
acknowledge our contributors

13 years agochars can't be negative nums
darnold [Thu, 25 Jan 2007 20:39:40 +0000 (20:39 +0000)]
chars can't be negative nums

13 years agofixed included headers
darnold [Thu, 25 Jan 2007 19:17:42 +0000 (19:17 +0000)]
fixed included headers

13 years agotest updates
darnold [Thu, 25 Jan 2007 17:49:49 +0000 (17:49 +0000)]
test updates

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:31 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
Update copyright year

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:30 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
Update minor version number

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:29 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
defined "char_t" for completion

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:28 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
killed warning message

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:27 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
RemoteNode::send() return error code on failure

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:26 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
added NetworkImpl::get_EndPoint(Rank)

13 years agoBug fixes and prep for MRNet minor release - - - - - - - - - - - - - - -
darnold [Wed, 24 Jan 2007 19:32:25 +0000 (19:32 +0000)]
Bug fixes and prep for MRNet minor release  - - - - - - - - - - - - - - -
added: ":" to remove aliasing problem from serial graph string