title: In python while using pack it is truncating my MSB bits while packing a long variable,
body: <pre><code>    int1 = 11111111
      int2 = 22222222
      long1 = 6666666666666666   
      int3 = 33333333
      int4 = 44444444
      int5 = 55555555
      pack_list = (int1,int2,long1,int3,int4,int5)     
      pack_format = struct.Struct('&gt; I I L I I I')              
      pack_data = pack_format.pack(*pack_list)   
  
      print "Original_values:", pack_list    
      print "Format_string:", pack_format.format     
      print "Uses:", pack_format.size,'bytes'   
      print "Packed_value:", binascii.hexlify(pack_data) 
  </code></pre>
  
  <p>I have 64 bits in a long variable but when I pack using big-endian it is treating it as an integer which you can see in the output showing as 24 bytes instead of 28 bytes which is the actual length of the data. Can someone tell me what is going on and help me to get all 64 bits in big-endian packed data</p>
  
  <blockquote>
    <blockquote>
      <blockquote>
        <blockquote>
          <p>Original Values: (11111111, 22222222, 66666666, 33333333, 44444444, 55555555)
          Format_string: > I I L I I I<br>
          Uses: 24 bytes<br>
          Packed_value: 111111112222222266666666333333334444444455555555</p>
        </blockquote>
      </blockquote>
    </blockquote>
  </blockquote>