A string of octets containing one bit per VLAN in the management domain on this trunk port. The first octet corresponds to VLANs with VlanIndex values of 0 through 7; the second octet to VLANs 8 through 15; etc. The most significant bit of each octet corresponds to the lowest value VlanIndex in that octet.

Well that's pretty clear. It's also the exact reverse of the previous form.

Perl's bit-vector is similar, except that the bits are in the opposite order in each byte. So you can translate between this format and a Perl bit-vector so:

sub xlat { my ($octets) = @_ ; return pack('B*', unpack('b*', $octets)) ; } ;
The translation reverses itself, and as you can see unpacks the bytes in one bit order and promptly repacks in the other. This shows the effect:
my $test = "\xC5\x11\x01\x80\x5A" ; print showbits($test), "\n" ; print showbits(xlat($test)), "\n" ; print showbits(xlat(xlat($test))), "\n" ; sub showbits { my ($octets) = @_ ; my $s = unpack('B*', $octets) ; $s =~ s/([01]{8})(?=[01])/$1:/g ; return $s ; } ;
giving:
  11000101:00010001:00000001:10000000:01011010
  10100011:10001000:10000000:00000001:01011010
  11000101:00010001:00000001:10000000:01011010
which appears to be what's required.


In reply to Re^3: Allowed VLANs with SNMP by gone2015
in thread Allowed VLANs with SNMP by spivey49

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.