<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Ooops, I needed to change the transfer vectors. in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319595#M36384</link>
    <description>&lt;P&gt;This is what I use.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jur.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;$ if p1 .eqs. "" then inquire p1 "Filename"&lt;BR /&gt;$ on error then goto end&lt;BR /&gt;$ open/read/write file 'p1'&lt;BR /&gt;$ read file data&lt;BR /&gt;$ if f$cvsi(0,32,f$extract(112,4,data)) .ne. %x340 then goto move&lt;BR /&gt;$ if f$cvsi(0,32,f$extract(116,4,data)) .eq. %xffffffff then goto update&lt;BR /&gt;$! No previous entry for debugger in vector, insert one&lt;BR /&gt;$move:&lt;BR /&gt;$ data[8*132,32] = f$cvsi(0,32,f$extract(124,4,data))&lt;BR /&gt;$ data[8*128,32] = f$cvsi(0,32,f$extract(120,4,data))&lt;BR /&gt;$ data[8*124,32] = f$cvsi(0,32,f$extract(116,4,data))&lt;BR /&gt;$ data[8*120,32] = f$cvsi(0,32,f$extract(112,4,data))&lt;BR /&gt;$ data[8*116,32] = %xffffffff&lt;BR /&gt;$ data[8*112,32] = %x340&lt;BR /&gt;$update:&lt;BR /&gt;$ flags = f$cvsi(0,8,f$extract(80,1,data))&lt;BR /&gt;$ data[8*80,8] = (flags/2) * 2 + 1&lt;BR /&gt;$ write/symbol/update file data&lt;BR /&gt;$end:&lt;BR /&gt;$ if f$logical("file") .nes. "" then close file&lt;BR /&gt;$ exit&lt;BR /&gt;﻿&lt;/P&gt;</description>
    <pubDate>Thu, 01 Sep 2011 18:54:23 GMT</pubDate>
    <dc:creator>Jur van der Burg</dc:creator>
    <dc:date>2011-09-01T18:54:23Z</dc:date>
    <item>
      <title>Setting transfer vector to not activate debugger for Alpha image (.EXE)</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319475#M36379</link>
      <description>&lt;P&gt;I am looking for that procedure which allows me to change the transfer vector for an Alpha image so that an image linked /DEBUG would not start in the debugger.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Guenther&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;P.S. If this forum software would be NOTES I would have found it already. Sigh!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edited to state correctly what I 'really' wanted.&lt;/P&gt;</description>
      <pubDate>Thu, 01 Sep 2011 17:28:44 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319475#M36379</guid>
      <dc:creator>GuentherF</dc:creator>
      <dc:date>2011-09-01T17:28:44Z</dc:date>
    </item>
    <item>
      <title>Re: Setting DEBUG flag for Alpha image (.EXE)</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319501#M36380</link>
      <description>&lt;P&gt;&lt;A href="http://labs.hoffmanlabs.com/node/848" target="_blank"&gt;http://labs.hoffmanlabs.com/node/848&lt;/A&gt;﻿&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.mppmu.mpg.de/~huber/vmssig/src/C/DEBUG_TOG.C" target="_blank"&gt;http://www.mppmu.mpg.de/~huber/vmssig/src/C/DEBUG_TOG.C&lt;/A&gt;﻿&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Given tthat this "forum software" is "well written" and "thoroughly tested" and "chosen specifically for customer needs" and "not prone to corrupting text", it seems mysterious that I cannot include source code. &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edit: I have posted a Stream-LF copy of the DCL procedure accessible at the first URL listed above, and have also added a link over to Hein's original posting from the comp.os.vms newsgoup.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 01 Sep 2011 17:16:42 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319501#M36380</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2011-09-01T17:16:42Z</dc:date>
    </item>
    <item>
      <title>Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319525#M36381</link>
      <description>&lt;P&gt;Thanks Hoff!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I made a mistake in my original post: Actually&amp;nbsp;I wanted to change the transfer vector only so an image linked /DEBUG would not start in the debugger.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I found a&amp;nbsp;proprietary procedure which does what I want. But I can't post it here. Maybe someone else has a tiny DCL procedure that is public for future generations?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Guenther&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Edit changed the subject in my original post.&lt;/P&gt;</description>
      <pubDate>Thu, 01 Sep 2011 17:33:00 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319525#M36381</guid>
      <dc:creator>GuentherF</dc:creator>
      <dc:date>2011-09-01T17:33:00Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319551#M36382</link>
      <description>&lt;P&gt;A transfer vector patch tool and another debug-flag tool are available in this comp.os.vms thread:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://groups.google.com/d/topic/comp.os.vms/V2B-4u7pq2A/discussion" target="_blank"&gt;https://groups.google.com/d/topic/comp.os.vms/V2B-4u7pq2A/discussion&lt;/A&gt;﻿&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 01 Sep 2011 17:53:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319551#M36382</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2011-09-01T17:53:56Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319575#M36383</link>
      <description>&lt;P&gt;Thanks Hoff!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;That is a good pointer. It always is with Norm's name showing up. :-)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;/Guenther&lt;/P&gt;</description>
      <pubDate>Thu, 01 Sep 2011 18:20:34 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319575#M36383</guid>
      <dc:creator>GuentherF</dc:creator>
      <dc:date>2011-09-01T18:20:34Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319595#M36384</link>
      <description>&lt;P&gt;This is what I use.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Jur.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;$ if p1 .eqs. "" then inquire p1 "Filename"&lt;BR /&gt;$ on error then goto end&lt;BR /&gt;$ open/read/write file 'p1'&lt;BR /&gt;$ read file data&lt;BR /&gt;$ if f$cvsi(0,32,f$extract(112,4,data)) .ne. %x340 then goto move&lt;BR /&gt;$ if f$cvsi(0,32,f$extract(116,4,data)) .eq. %xffffffff then goto update&lt;BR /&gt;$! No previous entry for debugger in vector, insert one&lt;BR /&gt;$move:&lt;BR /&gt;$ data[8*132,32] = f$cvsi(0,32,f$extract(124,4,data))&lt;BR /&gt;$ data[8*128,32] = f$cvsi(0,32,f$extract(120,4,data))&lt;BR /&gt;$ data[8*124,32] = f$cvsi(0,32,f$extract(116,4,data))&lt;BR /&gt;$ data[8*120,32] = f$cvsi(0,32,f$extract(112,4,data))&lt;BR /&gt;$ data[8*116,32] = %xffffffff&lt;BR /&gt;$ data[8*112,32] = %x340&lt;BR /&gt;$update:&lt;BR /&gt;$ flags = f$cvsi(0,8,f$extract(80,1,data))&lt;BR /&gt;$ data[8*80,8] = (flags/2) * 2 + 1&lt;BR /&gt;$ write/symbol/update file data&lt;BR /&gt;$end:&lt;BR /&gt;$ if f$logical("file") .nes. "" then close file&lt;BR /&gt;$ exit&lt;BR /&gt;﻿&lt;/P&gt;</description>
      <pubDate>Thu, 01 Sep 2011 18:54:23 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319595#M36384</guid>
      <dc:creator>Jur van der Burg</dc:creator>
      <dc:date>2011-09-01T18:54:23Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319841#M36385</link>
      <description>&lt;P&gt;Just for completeness and future generations... patches like this are only necessary on VAX or Alpha. On IA64 systems, there's a DCL command to turn image flags on or off. One wonders why they didn't make it work on Alpha too :-(&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;$ HELP SET IMAGE

SET

  IMAGE

    /FLAGS

          /FLAGS=(keyword[,...])

       Specifies which image attribute flags to turn on or off. The
       original flags are set by the OpenVMS I64 Linker at image
       link time. The possible keywords are listed below with a brief
       description. For more information about the image link flags, see
       the HP OpenVMS Version 8.2 Release Notes.

                                    WARNING

          Beware of modifying the flag values unless you are very
          knowledgeable about the internals of the image.

       Keyword          Description

       [NO]CALL_DEBUG   Call Debugger at startup.
       [NO]DBG_IN_DSF   Debug records in debug symbol file.
       [NO]DBG_IN_IMG   Debug records in image file.
       [NO]EXE_INIT     Image has a pointer to EXE$INITIALIZE.
       [NO]IMGSTA       Call SYS$IMGSTA.
       [NO]INITIALIZE   Image has a pointer to LIB$INITIALIZE.
       [NO]MAIN         Image has a main transfer address.
       [NO]MKTHREADS    Enable multiple kernel thread use.
       [NO]NOP0BUFS     No P0 buffers for RMS image I/O.
       [NO]P0IMAGE      Image is loaded only to P0 space.
       [NO]SIGNATURES   TIE Signatures are present.
       [NO]TBK_IN_DSF   Traceback records in debug symbol file.
       [NO]TBK_IN_IMG   Traceback records in image file.
       [NO]UPCALLS      User thread upcalls are enabled.

&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;(re Hoff and inserting code... Although I agree with most of your opinions about this woeful interface, one thing that is an improvement for me is posting code examples. I have an icon called "Insert code" which brings up a dialog box - copy and paste even works! - maybe it's Internet Explorer on Windows only?)&lt;/P&gt;</description>
      <pubDate>Fri, 02 Sep 2011 00:45:03 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5319841#M36385</guid>
      <dc:creator>John Gillings</dc:creator>
      <dc:date>2011-09-02T00:45:03Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5320089#M36386</link>
      <description>&lt;P&gt;﻿﻿﻿﻿﻿&amp;gt;&amp;gt;&amp;gt; &lt;EM&gt;One wonders why they didn't make it work on Alpha too :-(&lt;/EM&gt;&lt;/P&gt;&lt;DIV&gt;"They" made it work &lt;STRONG&gt;on&lt;/STRONG&gt; Alpha, too :-) But there was no project, enhancement request,funding to make it work &lt;STRONG&gt;for&lt;/STRONG&gt; Alpha images. ﻿﻿﻿﻿On the other hand, the VMS extensions for ELF specify some structures to mark an image as manipulated and to save the original settings. There is no such thing in the Alpha Object/Image specification. "They" felt that there should be at least a flag to show that someone manipulated the image with the supported tools, that is "set image".&lt;/DIV&gt;</description>
      <pubDate>Fri, 02 Sep 2011 07:07:36 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5320089#M36386</guid>
      <dc:creator>H.Becker</dc:creator>
      <dc:date>2011-09-02T07:07:36Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5321271#M36387</link>
      <description>&lt;P&gt;&amp;gt;&amp;gt; "They" felt that there should be at least a flag to show that someone manipulated the image with the supported tools,﻿&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1) Couldn't the presence of debugger records in the image serve as a flag that it must have been manipulated?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;2) If a feature goes against the grain of proper engineering, but is likely to please some customers, then IMHO one should simply add a /FORCE or /PRETTY_PLEASE_WITH_A_CHERRY_ON_TOP option where the help indicates reservations about its usage.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;fwiw,&lt;/P&gt;&lt;P&gt;Hein&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 04 Sep 2011 02:38:03 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5321271#M36387</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2011-09-04T02:38:03Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5321431#M36388</link>
      <description>&lt;P&gt;&lt;EM&gt;&lt;SPAN class="Apple-style-span"&gt;1) Couldn't the presence of debugger records in the image serve as a flag that it must have been manipulated?&lt;/SPAN&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="Apple-style-span"&gt;Could be. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tracking the integrity of operating system has been an issue for eons and for all operating systems, and long before SET IMAGE and related commands arived in VMS, and there have been previous products and implementations.﻿ &amp;nbsp;(Applications have similar issues, of course.)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="Apple-style-span"&gt;"They" implemented portions of a scheme for integrity-detection logic for the files comprising VMS itself, and the first parts were deployed in OpenVMS V8.2. &amp;nbsp;See SYS$UPDATE:VMSKITBLD.XSD﻿&amp;nbsp;﻿ for some related details. &amp;nbsp;(In retrospect, "they" would have found MD5 as part of this implementation would be replaced with a newer SHA scheme, but the intentional use of XML allowed "them" to make these sorts of changes.) &amp;nbsp;"They" also knew there w&lt;/SPAN&gt;&lt;SPAN class="Apple-style-span"&gt;as more work involved than that tracking, of course. &amp;nbsp;Modifying the image headers to flag these changes is possible, but not robust against nefarious changes. &amp;nbsp;Given the flags for the image are themselves at risk of modification, this gets into the discussions of digital signatures and of digitally signing files, too.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#111111"&gt;&lt;SPAN class="Apple-style-span"&gt;As for the question here, it wouldn't be at all difficult to activate a simple (and an "insecure") SET IMAGE tool or analogous on OpenVMS Alpha and even over on OpenVMS VAX. &amp;nbsp;The Alpha and VAX image headers are comparatively simpler than the ELF headers, and the work involved is already known and discussed here. &amp;nbsp;(But given that the tools are already available, this DCL change would only provide an easier UI and a way to avoid fetching (or writing) the tools, and (the costs) would increase the testing and support requirements for any future releases of VMS.)&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 04 Sep 2011 13:29:30 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5321431#M36388</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2011-09-04T13:29:30Z</dc:date>
    </item>
    <item>
      <title>Re: Ooops, I needed to change the transfer vectors.</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5322135#M36389</link>
      <description>&lt;P&gt;... and you can always link/dsf to run the image by default without the debugger but to have the full debug support on request when running it with /debug.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 05 Sep 2011 11:45:43 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/setting-transfer-vector-to-not-activate-debugger-for-alpha-image/m-p/5322135#M36389</guid>
      <dc:creator>H.Becker</dc:creator>
      <dc:date>2011-09-05T11:45:43Z</dc:date>
    </item>
  </channel>
</rss>

