<?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 not getting legacy device name for agile device(using libIO/io_new_to_legacy_dsfs) in Operating System - HP-UX</title>
    <link>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4834941#M641730</link>
    <description>&lt;P&gt;Hi I am using libIO/io_new_to_legacy_dsfs﻿() API for identifying the legacy devices for a given new agile device name.&lt;/P&gt;&lt;P&gt;But I am not getting the legacy device names as out put, Here is my snippet,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; char legacy_dsf[MAXPATHLEN]="";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int count;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (io_init(O_RDONLY) != IO_SUCCESS)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; io_error ("io_init");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;//int io_new_to_legacy_dsfs(char *new_dsf, char *legacy_dsf, int *count);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; io_new_to_legacy_dsfs(argv[1], legacy_dsf, &amp;amp;count);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("dsfDevice : %s \tlegacy_dsf : %s \tcount:%d\n", argv[1], legacy_dsf, count);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; io_end();&lt;BR /&gt;﻿&lt;/P&gt;&lt;P&gt;Where as ioscan provides following output for the same device which I was using&lt;/P&gt;&lt;P&gt;$ioscan -m dsf&lt;BR /&gt;Persistent DSF&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Legacy DSF(s)&lt;BR /&gt;========================================&lt;BR /&gt;/dev/rdisk/disk4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /dev/rdsk/c0t0d0&lt;BR /&gt;﻿&lt;/P&gt;&lt;P&gt;﻿Can anyone tell me how this libIO stuff actually works?&amp;nbsp;:smileymad:&lt;/P&gt;</description>
    <pubDate>Thu, 21 Jul 2011 07:15:58 GMT</pubDate>
    <dc:creator>pranav026</dc:creator>
    <dc:date>2011-07-21T07:15:58Z</dc:date>
    <item>
      <title>not getting legacy device name for agile device(using libIO/io_new_to_legacy_dsfs)</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4834941#M641730</link>
      <description>&lt;P&gt;Hi I am using libIO/io_new_to_legacy_dsfs﻿() API for identifying the legacy devices for a given new agile device name.&lt;/P&gt;&lt;P&gt;But I am not getting the legacy device names as out put, Here is my snippet,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; char legacy_dsf[MAXPATHLEN]="";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; int count;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (io_init(O_RDONLY) != IO_SUCCESS)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; io_error ("io_init");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return -1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;//int io_new_to_legacy_dsfs(char *new_dsf, char *legacy_dsf, int *count);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; io_new_to_legacy_dsfs(argv[1], legacy_dsf, &amp;amp;count);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; printf("dsfDevice : %s \tlegacy_dsf : %s \tcount:%d\n", argv[1], legacy_dsf, count);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; io_end();&lt;BR /&gt;﻿&lt;/P&gt;&lt;P&gt;Where as ioscan provides following output for the same device which I was using&lt;/P&gt;&lt;P&gt;$ioscan -m dsf&lt;BR /&gt;Persistent DSF&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Legacy DSF(s)&lt;BR /&gt;========================================&lt;BR /&gt;/dev/rdisk/disk4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /dev/rdsk/c0t0d0&lt;BR /&gt;﻿&lt;/P&gt;&lt;P&gt;﻿Can anyone tell me how this libIO stuff actually works?&amp;nbsp;:smileymad:&lt;/P&gt;</description>
      <pubDate>Thu, 21 Jul 2011 07:15:58 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4834941#M641730</guid>
      <dc:creator>pranav026</dc:creator>
      <dc:date>2011-07-21T07:15:58Z</dc:date>
    </item>
    <item>
      <title>Re: not getting legacy device name for agile device(using libIO/io_new_to_legacy_dsfs)</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4836295#M641731</link>
      <description>&lt;P&gt;has anyone tried using libIO ever before on HPUX 11.31?&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jul 2011 04:14:18 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4836295#M641731</guid>
      <dc:creator>pranav026</dc:creator>
      <dc:date>2011-07-22T04:14:18Z</dc:date>
    </item>
    <item>
      <title>Re: not getting legacy device name for agile device(using libIO/io_new_to_legacy_dsfs)</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4836581#M641732</link>
      <description>&lt;P&gt;Well yes libIO is used - in fact the LVM subsystem uses it, and it looks like ioscan uses a statically linked copy of libIO as well - in fact it probably uses the exact call you are using:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;#nm /usr/sbin/ioscan |grep io_new_to_legacy_dsfs
[153]    |     67696000|    2192|FUNC |LOCAL|0|   .text|io_new_to_legacy_dsfs&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;You don't actually tell us anywhere what you do get back from your code?&amp;nbsp; I'm no C coder, but looking at the man page for io_new_to_legacy_dsfs() I'd note the following...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- There seems to be an indication that you should set legacy_dsf to MAXPATHLEN * 10 and count to 10 before making the call. Certainly in the only example I can find &lt;A href="http://bizsupport2.austin.hp.com/bc/docs/support/SupportManual/c01991574/c01991574.pdf" target="_blank"&gt;here &lt;/A&gt;count is at least initialized to a value, and I couldn't see that you did that anywhere. It would seem that legacy_dsf has to be of size MAXPATHLEN * count to get back anything that will fit in the buffer.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;- You don't seem to do any error checking off the call to io_new_to_legacy_dsfs() how do you know its not returning IO_ERROR - you should check the return code and follow up with a call to io_error() if appropriate.&lt;/P&gt;</description>
      <pubDate>Fri, 22 Jul 2011 09:48:56 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4836581#M641732</guid>
      <dc:creator>Duncan Edmonstone</dc:creator>
      <dc:date>2011-07-22T09:48:56Z</dc:date>
    </item>
    <item>
      <title>Re: not getting legacy device name for agile device(using libIO/io_new_to_legacy_dsfs)</title>
      <link>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4838283#M641733</link>
      <description>&lt;P&gt;Exactly..!! I also read the manual page and did the needful changes(setting the count and array size), and it worked fine for me.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 25 Jul 2011 07:12:04 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-hp-ux/not-getting-legacy-device-name-for-agile-device-using-libio-io/m-p/4838283#M641733</guid>
      <dc:creator>pranav026</dc:creator>
      <dc:date>2011-07-25T07:12:04Z</dc:date>
    </item>
  </channel>
</rss>

