- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: Unmessage
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 01:31 PM
02-13-2012 01:31 PM
Hi,
Has anyone successfully gotten the unmessage utility to work under Alpha or Integrity VMS? And willing to share their code?
I mean the unmessage program by Joe Meadows that was on DECUS tapes and on ftp sites. This program "de-compiles" system message .EXE files into their source .MSG files.
I found this thread:
But I am unable to successfully compile the source code attached to that thread, as well..
Thanks,
Dave
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 01:49 PM - edited 02-13-2012 01:56 PM
02-13-2012 01:49 PM - edited 02-13-2012 01:56 PM
Re: Unmessage
What's the problem compiling the sources?
In unmsg.h, did you remove the GNU C __attribute__?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 02:02 PM
02-13-2012 02:02 PM
Re: Unmessage
Thanks for the reply. Yes, but I still get this:
$ cc/vers
HP C V7.3-010 on OpenVMS Alpha V8.3
$ cc unmsg
struct mscdef
^
%CC-W-DUPTYPESPEC, In this declaration, the same type specifier occurs more than once.
at line number 12 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.H;2
if (midx->midx$b_sanity != MIDX$C_SANITY)
......^
%CC-W-INCOMPDEREF, In this statement, "midx" is a pointer to an incomplete struct or union and should not be used as the left operan
d of a member dereference.
at line number 69 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.C;1
if (midx->midx$b_sanity != MIDX$C_SANITY)
......^
%CC-E-NEEDMEMBER, In this statement, "midx$b_sanity" is not a member of "midx".
at line number 69 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.C;1
for (i = 1; i < (midx->midx$w_size / MIDX$C_LENGTH); ++i)
...................^
%CC-W-INCOMPDEREF, In this statement, "midx" is a pointer to an incomplete struct or union and should not be used as the left operan
d of a member dereference.
at line number 74 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.C;1
for (i = 1; i < (midx->midx$w_size / MIDX$C_LENGTH); ++i)
...................^
%CC-E-NEEDMEMBER, In this statement, "midx$w_size" is not a member of "midx".
at line number 74 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.C;1
for (i = 1; i < (midx->midx$w_size / MIDX$C_LENGTH); ++i)
.....................^
%CC-W-INCOMPDEREF, In this statement, "midx" is a pointer to an incomplete struct or union and should not be used as the left operan
d of a member dereference.
at line number 98 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.C;1
for (i = 1; i < (midx->midx$w_size / MIDX$C_LENGTH); ++i)
.....................^
%CC-E-NEEDMEMBER, In this statement, "midx$w_size" is not a member of "midx".
at line number 98 in file TS_DEVICE:[LENNON.UNMSG]UNMSG.C;1
If I use the original unmessage.h header file, it does compile but running it against a message file results in no output.
Thanks,
Dave
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 02:19 PM
02-13-2012 02:19 PM
Re: Unmessage
I have no problems if I use the original unmessage.h:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 02:26 PM
02-13-2012 02:26 PM
Re: Unmessage
It seemed like there was some more stuff in unmsg.h than there was in unmessage.h but yes, if I use that one it compiles, but when I try to use it, I don't get any output:
$ mcr []unmsg sys$message:usb$msg.exe
$
I added some debugging printfs and it is "failing" at line 65:
if (msc->msc$w_sanity != MSC$C_SANITY)
return 0;
Any ideas on this?
Thanks again,
Dave
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 02:42 PM - edited 02-13-2012 02:45 PM
02-13-2012 02:42 PM - edited 02-13-2012 02:45 PM
SolutionAttached is some working code for unmessage, tested against OpenVMS Alpha V8.3.
$ cc/ver
HP C V7.3-010 on OpenVMS Alpha V8.3
$
This is a one-source-module configuration, with no (non-system) headers required.
A couple of minor source code changes were incorporated.
Tested against a V8.3 message file.
Ah, and HPSC just keeps blowing up with ITRC-style blank-pages when posting. This is a reposting. Hopefully. This time, with a zipped file, in place of a text file attachment. (edit: yep; the zip worked. It posted. If you can't unpack that, I'll post the text version else-host and will post a pointer here.)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-13-2012 02:44 PM - edited 02-13-2012 03:17 PM
02-13-2012 02:44 PM - edited 02-13-2012 03:17 PM
Re: Unmessage
>>> It seemed like there was some more stuff in unmsg.h than there was in unmessage.h
Yes, the pragmas to make sure the struct members are no member aligned (and some other stuff to make it compile on Linux as well).
It works for me (on Alpha, I don' have access to an Integrity):
...
Dump the message file, starting with VBN 2, there should be the 7B (the #define MIDX$C_SANITY 123) at offset 42.
[edit: the struct mscdef needs to have __nomember_alignment]