コード例 #1
0
ファイル: websocket.py プロジェクト: C4ptainCrunch/webalchemy
 def _write_frame(self, fin, opcode, data):
     if fin:
         finbit = 0x80
     else:
         finbit = 0
     frame = struct.pack("B", finbit | opcode)
     l = len(data)
     if self.mask_outgoing:
         mask_bit = 0x80
     else:
         mask_bit = 0
     if l < 126:
         frame += struct.pack("B", l | mask_bit)
     elif l <= 0xFFFF:
         frame += struct.pack("!BH", 126 | mask_bit, l)
     else:
         frame += struct.pack("!BQ", 127 | mask_bit, l)
     if self.mask_outgoing:
         mask = os.urandom(4)
         data = mask + _websocket_mask(mask, data)
     frame += data
     self.stream.write(frame)
コード例 #2
0
ファイル: websocket.py プロジェクト: C4ptainCrunch/webalchemy
 def _on_masked_frame_data(self, data):
     self._on_frame_data(_websocket_mask(self._frame_mask, data))