<?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: Find process by assumed persona in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110498#M25654</link>
    <description>While I understand the immediate sequence and commands and the particular problem encountered (multiple-persona disorders often are), what application or problem are you looking to address here? &lt;BR /&gt;&lt;BR /&gt;By backing up a step or three, there may well be another and different way to address the problem here.&lt;BR /&gt;&lt;BR /&gt;I do see this is involving the Notes NNTP gateway.</description>
    <pubDate>Wed, 28 May 2008 17:53:09 GMT</pubDate>
    <dc:creator>Hoff</dc:creator>
    <dc:date>2008-05-28T17:53:09Z</dc:date>
    <item>
      <title>Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110488#M25644</link>
      <description>A program uses SYS$PERSONA_ASSUME to a persona obtained from SYS$ACMW. The process displays the assumed identity in SHOW PROCESS,F$GETJPI etc, but you can't find the process using the assumed identity.&lt;BR /&gt;&lt;BR /&gt;E.g. with SHOW SYSTEM -&lt;BR /&gt;&lt;BR /&gt;$ sh sys/proc=*nn*/fu&lt;BR /&gt;OpenVMS V8.3  on node EISNER  24-MAY-2008 05:03:57.73  Uptime  132 13:33:44&lt;BR /&gt;        AlphaServer DS20 500 MHz&lt;BR /&gt;  Pid    Process Name    State  Pri      I/O       CPU       Page flts  Pages&lt;BR /&gt;0005B853 &lt;NNTP_NOTE_643&gt; LEF      5       51   0 00:00:00.02       155    186   &lt;BR /&gt;         [SUPPORT,BURLEY]                                                1488Kb&lt;BR /&gt;&lt;BR /&gt;$ sh sys/own=burley/fu&lt;BR /&gt;OpenVMS V8.3  on node EISNER  24-MAY-2008 05:04:07.95  Uptime  132 13:33:54&lt;BR /&gt;        AlphaServer DS20 500 MHz&lt;BR /&gt;  Pid    Process Name    State  Pri      I/O       CPU       Page flts  Pages&lt;BR /&gt;0008663B BURLEY          CUR  0   5     6568   0 00:00:01.72      4375    141   &lt;BR /&gt;         [SUPPORT,BURLEY]                                                1128Kb&lt;BR /&gt;&lt;BR /&gt;$ sho sys/id=0005B853/fu&lt;BR /&gt;OpenVMS V8.3  on node EISNER  24-MAY-2008 05:04:27.56  Uptime  132 13:34:14&lt;BR /&gt;        AlphaServer DS20 500 MHz&lt;BR /&gt;  Pid    Process Name    State  Pri      I/O       CPU       Page flts  Pages&lt;BR /&gt;0005B853 &lt;NNTP_NOTE_643&gt; LEF      5       51   0 00:00:00.02       155    186   &lt;BR /&gt;         [SUPPORT,BURLEY]                                                1488Kb&lt;BR /&gt;&lt;BR /&gt;Also can't find it with F$CONTEXT + F$PID -&lt;BR /&gt;&lt;BR /&gt;$ ctx=""&lt;BR /&gt;$ tmp=f$context("PROCESS", ctx, "USERNAME", "BURLEY" ,"EQL")&lt;BR /&gt;$ write sys$output f$pid(ctx)&lt;BR /&gt;0008663B&lt;BR /&gt;$ write sys$output f$pid(ctx)&lt;BR /&gt;&lt;BR /&gt;$ &lt;BR /&gt;&lt;BR /&gt;&lt;/NNTP_NOTE_643&gt;&lt;/NNTP_NOTE_643&gt;</description>
      <pubDate>Sat, 24 May 2008 09:35:51 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110488#M25644</guid>
      <dc:creator>Graham Burley</dc:creator>
      <dc:date>2008-05-24T09:35:51Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110489#M25645</link>
      <description>Graham,&lt;BR /&gt;&lt;BR /&gt;  Have you tried F$CONTEXT with UIC?&lt;BR /&gt;&lt;BR /&gt;Your SHOW SYSTEM of the assumptive process is displaying a UIC, not a Username.&lt;BR /&gt;&lt;BR /&gt;OpenVMS can be a bit schizophrenic when it comes to UICs and Usernames. As you're no doubt aware, they're not really connected.&lt;BR /&gt;&lt;BR /&gt;Compare F$GETJPI USERNAME and UIC before and after assuming the persona.</description>
      <pubDate>Sun, 25 May 2008 21:09:20 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110489#M25645</guid>
      <dc:creator>John Gillings</dc:creator>
      <dc:date>2008-05-25T21:09:20Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110490#M25646</link>
      <description>&amp;gt; Have you tried F$CONTEXT with UIC?&lt;BR /&gt;&lt;BR /&gt;Same result.&lt;BR /&gt;&lt;BR /&gt;&amp;gt; Compare F$GETJPI USERNAME and UIC before and after&lt;BR /&gt;&amp;gt; assuming the persona.&lt;BR /&gt;&lt;BR /&gt;$ sh sys/proc=*nn*&lt;BR /&gt;OpenVMS V8.3  on node EISNER  25-MAY-2008 17:51:08.72  Uptime  134 02:20:44&lt;BR /&gt;  Pid    Process Name    State  Pri      I/O       CPU       Page flts  Pages&lt;BR /&gt;00014881 &lt;NNTP_NOTE_660&gt; LEF      5       30   0 00:00:00.04       138    169   &lt;BR /&gt;$ write sys$output f$getjpi("00014881","USERNAME")&lt;BR /&gt;SYSTEM      &lt;BR /&gt;$ write sys$output f$getjpi("00014881","UIC")&lt;BR /&gt;[SYSTEM]&lt;BR /&gt;&lt;BR /&gt;And after:&lt;BR /&gt;&lt;BR /&gt;$ write sys$output f$getjpi("00014881","USERNAME")&lt;BR /&gt;BURLEY      &lt;BR /&gt;$ write sys$output f$getjpi("00014881","UIC")&lt;BR /&gt;[SUPPORT,BURLEY]&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Both SHOW SYSTEM and F$CONTEXT + F$PID return the process under the original/natural persona rather than the assumed one.&lt;/NNTP_NOTE_660&gt;</description>
      <pubDate>Sun, 25 May 2008 22:57:50 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110490#M25646</guid>
      <dc:creator>Graham Burley</dc:creator>
      <dc:date>2008-05-25T22:57:50Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110491#M25647</link>
      <description>I know nothing but ana/sys has show proc/persona. May be a script around this can solve your problem.&lt;BR /&gt;&lt;BR /&gt;Wim</description>
      <pubDate>Mon, 26 May 2008 08:49:45 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110491#M25647</guid>
      <dc:creator>Wim Van den Wyngaert</dc:creator>
      <dc:date>2008-05-26T08:49:45Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110492#M25648</link>
      <description>Hi Graham,&lt;BR /&gt;&lt;BR /&gt;That's amazing! As long as you have privs (group,world, etc) to see the new UIC (whick clearly you do for the PID access methos) then I say "bug". Has anyone got the source code to check?&lt;BR /&gt;&lt;BR /&gt;It's hardly likely to be a DCL quirk, but has anyone tried with a 3GL SYS$GETJPI?&lt;BR /&gt;&lt;BR /&gt;I'll have a ho tonight if no one can shed any further light on it.&lt;BR /&gt;&lt;BR /&gt;Cheers Richard.</description>
      <pubDate>Mon, 26 May 2008 22:14:25 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110492#M25648</guid>
      <dc:creator>Richard J Maher</dc:creator>
      <dc:date>2008-05-26T22:14:25Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110493#M25649</link>
      <description>Interesting!&lt;BR /&gt;&lt;BR /&gt;F$CONTEXT creates an internal item list using $PROCESS_SCAN. Looking at the SSRM and $PSCANDEF, there's nothing about personas. I suspect it hasn't been updated to deal with personas, and is looking at the "permanent" fields for username and UIC. The SSRM contains the note:&lt;BR /&gt;&lt;BR /&gt;"The item codes referenced by $PROCESS_SCAN are found in data structures that are always resident in the system, primarily the process control block (PCB) and the job information block (JIB). A scan of processes never forces a process that is swapped out of memory to be brought into memory to read nonresident information."&lt;BR /&gt;&lt;BR /&gt;This may be one reason for Graham's observation (another might be that no one has ever asked!), are the persona structures permanently resident?&lt;BR /&gt;&lt;BR /&gt;On the other hand, $GETJPI knows all about personas, and is not constrained to avoid swapping processes into memory.&lt;BR /&gt;&lt;BR /&gt;The big question is how should process scan operate? Should it see the "real" username, or the persona? Should there be an option to request one or other explicitly? What about the default?&lt;BR /&gt;&lt;BR /&gt;Maybe it's all just "too hard"? After all, you could implement what you want by looping across all processes and performing your own matches against username or UIC (or, for that matter any of the JPI$_PERSONA* items).&lt;BR /&gt;&lt;BR /&gt;I'm undecided if I agree with Richard that this is a bug. I could probably be convinced either way.&lt;BR /&gt;&lt;BR /&gt;If you care enough, please log a case against a support contract and request an enhancement (or bug fix). Unless someone asks, it will stay as it is.</description>
      <pubDate>Tue, 27 May 2008 00:43:26 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110493#M25649</guid>
      <dc:creator>John Gillings</dc:creator>
      <dc:date>2008-05-27T00:43:26Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110494#M25650</link>
      <description>&lt;!--!*#--&gt;Graham,&lt;BR /&gt;&lt;BR /&gt;If the intent is to permanently change the values, I have been able to modify the ACCOUNT with $persona_modify, specifying "-1" for the persona to modify.  "-1" is the natural persona.&lt;BR /&gt;&lt;BR /&gt;I am attaching a Fortran function that does this.  We've been using it from a program that changes the account name whenever someone changes his or her working "environment" (a set of logical names controlling which devices/files will be used).  This allows us to see what "environment" was in effect at the time an image was run, and this is a field that shows up in the image accounting records, but has little affect on anything else.&lt;BR /&gt;&lt;BR /&gt;I would expect that anything that can be changed in an assumed persona can be modified in the natural persona.  If you aren't switching between multiple personae, then I would just modify the natural persona and be done.&lt;BR /&gt;&lt;BR /&gt;Jon&lt;BR /&gt;&lt;BR /&gt;P.S. I also sent the source to your Eisner account.&lt;BR /&gt;</description>
      <pubDate>Tue, 27 May 2008 07:00:19 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110494#M25650</guid>
      <dc:creator>Jon Pinkley</dc:creator>
      <dc:date>2008-05-27T07:00:19Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110495#M25651</link>
      <description>In the case of a multi-threaded server switching between many personas using the natural persona in process scan may make sense, but it does seem incredibly inconsistent to have a utility like show system using different personas for display and selection purposes.&lt;BR /&gt;&lt;BR /&gt;I hadn't considered using SYS$PROCESS_MODIFY, but if it's intended to work that way it'd be more appropriate to the single persona switch required. My impression was that modify was to be used on a persona that was then assumed, not an active one.&lt;BR /&gt;</description>
      <pubDate>Tue, 27 May 2008 23:04:18 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110495#M25651</guid>
      <dc:creator>Graham Burley</dc:creator>
      <dc:date>2008-05-27T23:04:18Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110496#M25652</link>
      <description>Hi Graham,&lt;BR /&gt;&lt;BR /&gt;Sorry I didn't get back to you last night. (My PAKs ran out and I was knackered, and sadly the results of my efforts won't help you much anyway - code below FWIW)&lt;BR /&gt;&lt;BR /&gt;Basically, it's still bollocks with $getjpi in a 3GL :-( Why VMS engineering wouldn't be all over this like the IMM team on a free-meal, I have no idea. (FWIW, you get the old Username when you do a Conttrol-T as well)&lt;BR /&gt;&lt;BR /&gt;I'm sick of arguing with people and I'm not sure if John still thinks it's unsupported to do a $persona_assume followed by a $creprc (VMSNOTES circa 1995) but as you rightly pointed out the issue of consistency is the one that simply cannot be avoided!&lt;BR /&gt;&lt;BR /&gt;That's on Alpha BTW, maybe it's different on VAX?&lt;BR /&gt;&lt;BR /&gt;Cheers Richard Maher&lt;BR /&gt;&lt;BR /&gt;PS. PAKs are no free for DSPP memebers! Yippee! I used to think 250 quid was a bargain anyway, but this is even better :-)&lt;BR /&gt;&lt;BR /&gt;getjpi.cob&lt;BR /&gt;identification division.&lt;BR /&gt;program-id.    getjpi with ident "V1.0".&lt;BR /&gt;data division.&lt;BR /&gt;working-storage section.&lt;BR /&gt;01  ss$_nomoreproc                  pic s9(9)       comp    value   external        ss$_nomoreproc.&lt;BR /&gt;01  ss$_normal                      pic s9(9)       comp    value   external        ss$_normal.&lt;BR /&gt;01  sys_status                      pic s9(9)       comp.&lt;BR /&gt;*&lt;BR /&gt;01  pidctx                          pic s9(9)       comp.&lt;BR /&gt;01  scan_list.&lt;BR /&gt;    03  item_nodename.&lt;BR /&gt;        05                          pic s9(4)       comp    value   1.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        pscan$_nodename.&lt;BR /&gt;        05                                          pointer value   reference       wildcard.&lt;BR /&gt;        05                          pic s9(9)       comp    value   external        pscan$m_wildcard.&lt;BR /&gt;    03  item_username.&lt;BR /&gt;        05  search_username_len     pic s9(4)       comp.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        pscan$_username.&lt;BR /&gt;        05                                          pointer value   reference       search_username.&lt;BR /&gt;        05                          pic s9(9)       comp.&lt;BR /&gt;    03                              pic s9(9)       comp.&lt;BR /&gt;*&lt;BR /&gt;01  wildcard                        pic x(1)                value   "*".&lt;BR /&gt;01  search_username                 pic x(12).&lt;BR /&gt;*&lt;BR /&gt;01  jpi_list.&lt;BR /&gt;    03  item_pid.&lt;BR /&gt;        05                          pic s9(4)       comp    value   4.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        jpi$_pid.&lt;BR /&gt;        05                                          pointer value   reference       pid.&lt;BR /&gt;        05                          pic s9(9)       comp.&lt;BR /&gt;    03  item_prcnam.&lt;BR /&gt;        05                          pic s9(4)       comp    value   11.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        jpi$_prcnam.&lt;BR /&gt;        05                                          pointer value   reference       out_prcnam.&lt;BR /&gt;        05                                          pointer value   reference       out_prcnam_len.&lt;BR /&gt;    03  item_nodame.&lt;BR /&gt;        05                          pic s9(4)       comp    value   6.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        jpi$_nodename.&lt;BR /&gt;        05                                          pointer value   reference       nodename.&lt;BR /&gt;        05                                          pointer value   reference       nodename_len.&lt;BR /&gt;    03                              pic s9(9)       comp.&lt;BR /&gt;*&lt;BR /&gt;01  iosb.&lt;BR /&gt;    03  cond_val                    pic s9(9)       comp.&lt;BR /&gt;    03                              pic s9(9)       comp.&lt;BR /&gt;01  pid                             pic s9(9)       comp.&lt;BR /&gt;01  out_prcnam                      pic x(15).&lt;BR /&gt;01  out_prcnam_len                  pic 9(4)        comp.&lt;BR /&gt;01  nodename                        pic x(6).&lt;BR /&gt;01  nodename_len                    pic 9(4)        comp.&lt;BR /&gt;*&lt;BR /&gt;procedure division.&lt;BR /&gt;kick_off section.&lt;BR /&gt;00.&lt;BR /&gt;    display "Enter username to search for : " no advancing erase screen.&lt;BR /&gt;    accept search_username protected size 12 editing reversed bold at end go to fini.&lt;BR /&gt;&lt;BR /&gt;    call "str$trim"&lt;BR /&gt;        using   by descriptor   search_username, search_username&lt;BR /&gt;                by reference    search_username_len&lt;BR /&gt;        giving  sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;    if search_username_len = zeros go to fini.&lt;BR /&gt;&lt;BR /&gt;    call "sys$process_scan" using pidctx, scan_list giving sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;&lt;BR /&gt;    call "sys$getjpiw" using omitted, pidctx, omitted, jpi_list, iosb, omitted, omitted giving sys_status.&lt;BR /&gt;    if sys_status = ss$_normal move cond_val to sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;&lt;BR /&gt;    perform search_loop until sys_status not = ss$_normal.&lt;BR /&gt;    if sys_status not = ss$_nomoreproc&lt;BR /&gt;        call "sys$process_scan" using pidctx, omitted giving sys_status&lt;BR /&gt;        if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;*&lt;BR /&gt;fini.&lt;BR /&gt;    stop run.&lt;BR /&gt;*&lt;BR /&gt;search_loop section.&lt;BR /&gt;00.&lt;BR /&gt;    display "Process Name: ", out_prcnam(1:out_prcnam_len).&lt;BR /&gt;    display "pid = ", pid with conversion.&lt;BR /&gt;*&lt;BR /&gt;    call "sys$getjpiw" using omitted, pidctx, omitted, jpi_list, iosb, omitted, omitted giving sys_status.&lt;BR /&gt;    if sys_status = ss$_normal move cond_val to sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal and ss$_nomoreproc &lt;BR /&gt;        call "lib$stop" using by value sys_status.&lt;BR /&gt;*&lt;BR /&gt;end program getjpi.&lt;BR /&gt;&lt;BR /&gt;become.cob&lt;BR /&gt;identification division.&lt;BR /&gt;program-id.    become with ident "V1.0".&lt;BR /&gt;data division.&lt;BR /&gt;working-storage section.&lt;BR /&gt;01  crepsn_flags                    pic s9(9)       comp    value   external        crepsn_flags.&lt;BR /&gt;01  asmpsn_flags                    pic s9(9)       comp    value   external        asmpsn_flags.&lt;BR /&gt;01  ss$_nomoreproc                  pic s9(9)       comp    value   external        ss$_nomoreproc.&lt;BR /&gt;01  ss$_normal                      pic s9(9)       comp    value   external        ss$_normal.&lt;BR /&gt;01  sys_status                      pic s9(9)       comp.&lt;BR /&gt;*&lt;BR /&gt;01  creprc_persona                  pic 9(9)        comp.&lt;BR /&gt;01  restore_persona                 pic 9(9)        comp    value   1.&lt;BR /&gt;*&lt;BR /&gt;01  jpi_list.&lt;BR /&gt;    03  item_pid.&lt;BR /&gt;        05                          pic s9(4)       comp    value   4.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        jpi$_pid.&lt;BR /&gt;        05                                          pointer value   reference       pid.&lt;BR /&gt;        05                          pic s9(9)       comp.&lt;BR /&gt;    03  item_username.&lt;BR /&gt;        05                          pic s9(4)       comp    value   11.&lt;BR /&gt;        05                          pic s9(4)       comp    value   external        jpi$_username.&lt;BR /&gt;        05                                          pointer value   reference       out_username.&lt;BR /&gt;        05                                          pointer value   reference       out_username_len.&lt;BR /&gt;    03                              pic s9(9)       comp.&lt;BR /&gt;*&lt;BR /&gt;01  iosb.&lt;BR /&gt;    03  cond_val                    pic s9(9)       comp.&lt;BR /&gt;    03                              pic s9(9)       comp.&lt;BR /&gt;01  pid                             pic s9(9)       comp.&lt;BR /&gt;01  in_username                     pic x(12).&lt;BR /&gt;01  in_username_len                 pic 9(4)        comp.&lt;BR /&gt;01  out_username                    pic x(12).&lt;BR /&gt;01  out_username_len                pic 9(4)        comp.&lt;BR /&gt;*&lt;BR /&gt;procedure division.&lt;BR /&gt;kick_off section.&lt;BR /&gt;00.&lt;BR /&gt;    display "Who to become: " no advancing erase screen. &lt;BR /&gt;    accept in_username protected size 12 editing reversed bold at end go to fini.&lt;BR /&gt;&lt;BR /&gt;    call "str$trim"&lt;BR /&gt;        using   by descriptor   in_username, in_username&lt;BR /&gt;                by reference    in_username_len&lt;BR /&gt;        giving  sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;    if in_username_len = zeros go to fini.&lt;BR /&gt;      &lt;BR /&gt;    call "sys$persona_create"&lt;BR /&gt;        using   by reference    creprc_persona&lt;BR /&gt;                by descriptor   in_username(1:in_username_len)&lt;BR /&gt;                by value        crepsn_flags&lt;BR /&gt;        giving  sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;&lt;BR /&gt;    call "sys$persona_assume"&lt;BR /&gt;        using   by reference    creprc_persona&lt;BR /&gt;                by value        asmpsn_flags&lt;BR /&gt;        giving  sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;*&lt;BR /&gt;    call "sys$getjpiw" using omitted, omitted, omitted, jpi_list, iosb, omitted, omitted giving sys_status.&lt;BR /&gt;    if sys_status = ss$_normal move cond_val to sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal and ss$_nomoreproc call "lib$stop" using by value sys_status.&lt;BR /&gt;&lt;BR /&gt;    display "We are now [", out_username(1:out_username_len), "]".&lt;BR /&gt;    display "Press return when finished. . ." no advancing.&lt;BR /&gt;    accept in_username.&lt;BR /&gt;&lt;BR /&gt;    call "sys$persona_assume"&lt;BR /&gt;        using   by reference    restore_persona&lt;BR /&gt;                by value        asmpsn_flags&lt;BR /&gt;        giving  sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;&lt;BR /&gt;    call "sys$persona_delete" using creprc_persona giving sys_status.&lt;BR /&gt;    if sys_status not = ss$_normal call "lib$stop" using by value sys_status.&lt;BR /&gt;*&lt;BR /&gt;fini.&lt;BR /&gt;    stop run.&lt;BR /&gt;*&lt;BR /&gt;end program become.&lt;BR /&gt;&lt;BR /&gt;getjpi_def.mar&lt;BR /&gt;            .title          GETJPI_DEF - External data&lt;BR /&gt;&lt;BR /&gt;            $impdef         GLOBAL&lt;BR /&gt;&lt;BR /&gt;            .library        /sys$library:lib.mlb/&lt;BR /&gt;&lt;BR /&gt;            $pscandef       GLOBAL&lt;BR /&gt;&lt;BR /&gt;            crepsn_flags      == &lt;IMP&gt;&lt;BR /&gt;            asmpsn_flags      == &lt;IMP&gt;&lt;BR /&gt;&lt;BR /&gt;            .end&lt;BR /&gt;&lt;/IMP&gt;&lt;/IMP&gt;</description>
      <pubDate>Wed, 28 May 2008 11:36:42 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110496#M25652</guid>
      <dc:creator>Richard J Maher</dc:creator>
      <dc:date>2008-05-28T11:36:42Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110497#M25653</link>
      <description>&amp;gt; (FWIW, you get the old Username when you do a Conttrol-T as well)&lt;BR /&gt;&lt;BR /&gt;That's the process name. There's lots of things persona services don't do, but setting the process name is not top of my wishlist.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 28 May 2008 17:22:52 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110497#M25653</guid>
      <dc:creator>Graham Burley</dc:creator>
      <dc:date>2008-05-28T17:22:52Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110498#M25654</link>
      <description>While I understand the immediate sequence and commands and the particular problem encountered (multiple-persona disorders often are), what application or problem are you looking to address here? &lt;BR /&gt;&lt;BR /&gt;By backing up a step or three, there may well be another and different way to address the problem here.&lt;BR /&gt;&lt;BR /&gt;I do see this is involving the Notes NNTP gateway.</description>
      <pubDate>Wed, 28 May 2008 17:53:09 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110498#M25654</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2008-05-28T17:53:09Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110499#M25655</link>
      <description>Hi Graham,&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt; (FWIW, you get the old Username when you&lt;BR /&gt;&amp;gt;&amp;gt; do a Conttrol-T as well)&lt;BR /&gt;&lt;BR /&gt;&amp;gt;That's the process name. There's lots of&lt;BR /&gt;&amp;gt; things persona services don't do, but&lt;BR /&gt;&amp;gt; setting the process name is not top of my&lt;BR /&gt;&amp;gt; wishlist.&lt;BR /&gt;&lt;BR /&gt;Doh! Yeah, sorry for pointless, useless, and in all other senses just wrong observation. My mind's still stuck on polling for the magical appearance of an ETicket Number in a labyrinth of XML :-( Modern technology eh?&lt;BR /&gt;&lt;BR /&gt;Anyway, I'm going to repost the same code as an attachment here as I feel it illustrates the bug you've identified nicely. (If not for you then maybe for someone else)&lt;BR /&gt;&lt;BR /&gt;FWIW, I'll post a slight variation of the code that might help you as a work-around. (If a "work-around" is in fact what you're after?)&lt;BR /&gt;&lt;BR /&gt;Basically, it drops the username-equality from the $process_scan an shifts the responsibility to your code. IE. Even though $process_scan couldn't see the persona Username, the subsequent $getjpi returns the *correct* username and then you manually filter out the ones you want. (At least I think it does, I'll post the code anyway in a minute) &lt;BR /&gt;&lt;BR /&gt;Cheers Richard&lt;BR /&gt;&lt;BR /&gt;PS. Is there a control-t like thing on Linux?</description>
      <pubDate>Thu, 29 May 2008 09:40:10 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110499#M25655</guid>
      <dc:creator>Richard J Maher</dc:creator>
      <dc:date>2008-05-29T09:40:10Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110500#M25656</link>
      <description>OK, here 'tis,&lt;BR /&gt;&lt;BR /&gt;Not much changed, but as discussed the filtering is done in your code rather than the (blatantly buggy) $process_scan.&lt;BR /&gt;&lt;BR /&gt;I haven't ruled out other options, if what I think the code is doing is not correct, or not what you want. &lt;BR /&gt;&lt;BR /&gt;If only it was Web Services or a Unix semaphore then $process_scan might get fixed :-( And if it was related to DECWindows or PCSI related then there'd be no trouble getting it back-ported.&lt;BR /&gt;&lt;BR /&gt;Cheers Richard&lt;BR /&gt;&lt;BR /&gt;PS. Now where was I? Oh yes, if nestedClass.getUseless().getContruct().getLongFreeText.indexOf("Pax1") - or was it List&lt;ABSENTALLMODULARITY&gt; before that?&lt;/ABSENTALLMODULARITY&gt;</description>
      <pubDate>Thu, 29 May 2008 10:01:10 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110500#M25656</guid>
      <dc:creator>Richard J Maher</dc:creator>
      <dc:date>2008-05-29T10:01:10Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110501#M25657</link>
      <description>Graham, I am sorry, this is out of the subject of your post&lt;BR /&gt;&lt;BR /&gt;&amp;gt;&amp;gt;&amp;gt;PS. Is there a control-t like thing on Linux?&lt;BR /&gt;&lt;BR /&gt;Well Control-T is just SIGINFO, and by the way, yes, with Linux, some tools have it, like &lt;BR /&gt;&lt;BR /&gt;dd, fsck, dump, cp, tcpdump, tethereal, tshark&lt;BR /&gt;(and I guess many others)&lt;BR /&gt;&lt;BR /&gt;Bsd And Vms have had Control T for a long time (from day one ?)&lt;BR /&gt;And Mac OS X 10.4 has it&lt;BR /&gt;&lt;A href="http://www.macosxhints.com/article.php?story=200505201204071(...)" target="_blank"&gt;http://www.macosxhints.com/article.php?story=200505201204071(...)&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;Somebody offered in the&lt;BR /&gt;Linux Kernel Mailing List to add it for the kernel 2.4, but it has not been added&lt;BR /&gt;&lt;A href="http://www.cs.tau.ac.il/~didi/ctrl-t/" target="_blank"&gt;http://www.cs.tau.ac.il/~didi/ctrl-t/&lt;/A&gt;</description>
      <pubDate>Thu, 29 May 2008 10:04:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110501#M25657</guid>
      <dc:creator>labadie_1</dc:creator>
      <dc:date>2008-05-29T10:04:56Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110502#M25658</link>
      <description>&amp;gt; what application or problem are you looking to address here? &lt;BR /&gt;&lt;BR /&gt;I was doing some simple DCL to see if a user active on the system when I noticed that these processes were not included. I can work around that, but was curious about the behaviour, and whether I was missing/messing up something in the persona calls.&lt;BR /&gt;&lt;BR /&gt;I'm not likely to log a support case about this. I'm not sure how $PROCESS_SCAN should be amended to cope with personas, but the current behaviour looks a bit odd to me.&lt;BR /&gt;&lt;BR /&gt;Thanks to all who responded, in particular John Gillings re $PROCESS_SCAN and persona issues.&lt;BR /&gt;</description>
      <pubDate>Thu, 29 May 2008 15:04:14 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110502#M25658</guid>
      <dc:creator>Graham Burley</dc:creator>
      <dc:date>2008-05-29T15:04:14Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110503#M25659</link>
      <description>See previous note.</description>
      <pubDate>Thu, 29 May 2008 15:14:18 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110503#M25659</guid>
      <dc:creator>Graham Burley</dc:creator>
      <dc:date>2008-05-29T15:14:18Z</dc:date>
    </item>
    <item>
      <title>Re: Find process by assumed persona</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110504#M25660</link>
      <description>Hi Graham,&lt;BR /&gt;&lt;BR /&gt;I've just re-read this thread and realized that John came up with the application-side filtering idea about 3 weeks ago; therefore I have concluded that my contribution to the debate has been about zero (except perhaps for that certain je ne sais quoi that only I can bring :-)&lt;BR /&gt;&lt;BR /&gt;I'm replying now only 'cos you've helped me a lot recently and I so desperately wanted to reciprocate, and I haven't felt this useless and ineffectual since about, well, yesterday.&lt;BR /&gt;&lt;BR /&gt;On the plus side, John's (Hoff's?) persuit of a security fix for the dodgy lib$get_vm call in sys$persona_create, may have left the crack open for an inclusion of a $process_scan fix on the same cost-code? (Or an inner-mode safe lib$*vm heap manager would obviously be better!)&lt;BR /&gt;&lt;BR /&gt;Anyway, in my quest for relevance, I've attached some kernel mode code that I used to use before DEC gave us the lovely the persona services - last working circa VAX/VMS 6.2. (I can't see the working-set lock-down which is ringing alarm bells and I am by no means recommending that anyone use this in production!)&lt;BR /&gt;&lt;BR /&gt;On a closing note, you mentioned a $persona* wish list? I happen to think the persona services are the mutt's nuts! Ask away!&lt;BR /&gt;&lt;BR /&gt;How 'bout a starter question? "West Sussex pubs for $10"? European -vs- African Swallows? My favourite colour? It's Tourquoise! Ask fancy-pants Gillings if he knew that then eh :-)&lt;BR /&gt;&lt;BR /&gt;Cheers Richard</description>
      <pubDate>Fri, 30 May 2008 11:01:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/find-process-by-assumed-persona/m-p/5110504#M25660</guid>
      <dc:creator>Richard J Maher</dc:creator>
      <dc:date>2008-05-30T11:01:56Z</dc:date>
    </item>
  </channel>
</rss>

