I learned to send packet using socket by Python, but there is an error (socket.error errno=10022) when running the code below on the Windows machine, and everything works fine on the Linux. How can I fix it?
try: s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_TCP) except socket.error , msg: print 'Socket could not be created. Error Code : ' + str(msg[0]) + ' Message ' + msg[1] sys.exit() s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1) source_ip = self.source dest_ip = self.destination packet = ''; ip_header = self.construct_ip_header() tcp_header = self.construct_tcp_header() packet = ip_header + tcp_header s.sendto(packet, (dest_ip , 0 ))