Народ у кого есть пример программирования сокета под FreeBSD AT&T синтаксиса без изпоьзования библиотек - если вообще есть такой в природе Зарание благодарен
Drop смотри Lab6C - клиент и Lab6S - сервер. Если понадобиться отладчик - вышлю 1116322464__asmlinux.zip добавлено: Забыл сказать - во FreeBSD может оказаться другой порядок передачи параметров и номера функций )
Я переписал клиент под FreeBSD Все запускается но у меня такое впечатление что сокет не создался netstate молчит =(
Я еще с отладчиком не разобрался незнаю как толком его юзать Вот мой сорец Я походу дела к сокету неправельно обращаюсь Если кто нашел ошибку то плиз помогите =========Резать тут============================ .text .globl _start _start: #------------------------- movl $2,%eax #Sys_fork pushl %eax .byte 0x9a .long 0 .word 7 #------------------------- test %eax,%eax jz _cont1 #------------------------- xorl %eax,%eax # pushl %eax # incl %eax # Exit pushl %eax # .byte 0x9a .long 0 .word 7 #------------------------- _cont1: movl $147,%eax #Sys_setsid pushl %eax .byte 0x9a .long 0 .word 7 #------------------------ # Skip Sys_sygnal (Я ненашел номер вызова )) ) #------------------------ movl $2,%eax # Sys_fork pushl %eax .byte 0x9a .long 0 .word 7 #----------------------- test %eax,%eax jz _cont2 xorl %eax,%eax # pushl %eax # incl %eax # Exit pushl %eax # .byte 0x9a .long 0 .word 7 #---------------------- _cont2: pushl $0 #Protocol pushl $1 #SOCK_STREAM pushl $2 #AF_INET movl %esp,%ecx movl $0,%ebx #SYS_SOCKET movl $97,%eax #Sys_socket pushl %eax .byte 0x9a .long 0 .word 7 #--------------------- addl $0xc,%esp movl %eax,(sockfd) pushl $0x10 pushl $sockaddr_in pushl %eax movl %esp,%ecx movl $2,%ebx #SYS_BIND movl $97,%eax #Sys_socket pushl %eax .byte 0x9a .long 0 .word 7 addl $0xc,%esp #--------------------------------------------------- pushl $0 movl (sockfd),%eax pushl %eax movl %esp,%ecx movl $4,%ebx #SYS_LISTEN movl $97,%eax #Sys_socket pushl %eax .byte 0x9a .long 0 .word 7 #--------------------------------------------------- _wait_next_client: pushl $0 pushl $0 movl (sockfd),%eax pushl %eax movl %esp,%ecx movl $5,%ebx #SYS_ACCEPT movl $97,%eax pushl %eax .byte 0x9a .long 0 .word 7 addl $0xc,%esp movl %eax,(connfd) jmp _wait_next_client #-------------------------------------------------- # Skip То что к сокету не относится я проскипал #-------------------------------------------------- .data sockfd: .long 0 connfd: .long 0 sockaddr_in: sin_family: .word 2 sin_port: .word 0x3930 sin_addr: .long 0 ===============================Резать тут===============