информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Сетевые кракеры и правда о деле ЛевинаСтрашный баг в WindowsSpanning Tree Protocol: недокументированное применение
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Google заблокировала 2 с лишним... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
SMTP... 02.05.02 10:35  Число просмотров: 973
Автор: ih8u <i hate you> Статус: Member
<"чистая" ссылка>
У тя connect возвратил SOCKET_ERROR
<programming>
SMTP... 30.04.02 12:54  
Автор: New Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Вот такая проблема
Содрал я тут с одного сайта исходник отправки сообщения по е-мылу
А вот не работает,однако....
В дебаггере посмотрел - на функции connect выдается FFFFFFFF в eax
Описалово на русском к этому файлу прилагается
Не могу понять

.386
.model flat, stdcall
option casemap :none

include \masm32\include\windows.inc
include \masm32\include\wsock32.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
include \masm32\include\gdi32.inc
include \masm32\include\comdlg32.inc
include \masm32\include\advapi32.inc
includelib \masm32\lib\wsock32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\comdlg32.lib
includelib \masm32\lib\advapi32.lib

.data
server db 'yandex.ru',0
helo_ db "HELO yandex.ru",10,13
mfrom_ db "MAIL FROM: xren@rambler.ru",10,13
rcpt_ db "RCPT TO: dvaxrena@yandex.ru",10,13
datas_ db "DATA",10,13
from_ db "FROM: Sender ",13,10
to_ db "TO: Victim ",13,10
sub_ db "SUBJECT: Bla",13,10
this_ db "This is an e-mail",13,10
point_ db ".",13,10
quit_ db "QUIT",13,10

.data?
hInstance dd ?
wsa WSADATA <?>
sockaddr_1 sockaddr_in <?>
fd dd ?

.code
start:
invoke WSAStartup,101h,offset wsa

invoke socket,AF_INET,SOCK_STREAM,0
mov fd,eax

mov sockaddr_1.sin_family,AF_INET
invoke htons,25
mov sockaddr_1.sin_port,ax
invoke gethostbyname,ADDR server
mov eax,[eax+12]
mov eax,[eax] ;вот эта строчка еще непонятна
mov sockaddr_1.sin_addr,eax

invoke connect,fd,ADDR sockaddr_1,sizeof sockaddr_1
;вот после этой функции выше в eax FFFFFFFF
;ошибка то есть

invoke closesocket,fd

invoke WSACleanup

invoke ExitProcess,eax

end start
SMTP... 02.05.02 10:35  
Автор: ih8u <i hate you> Статус: Member
<"чистая" ссылка>
У тя connect возвратил SOCKET_ERROR
RFC почитай. 02.05.02 05:20  
Автор: йцукенг <jcukeng> Статус: Member
<"чистая" ссылка>
ф-я connect вернула -1.
причину можно узнать вызвав WSAGetLastError.

PS. если то что ты привел - весь исходник, то и не должно ничего отправляться:).
PPS. не выпендривайся, напиши то что тебе надо на С, потом переделаешь на асм, если будет нужда:).
RFC почитай. 06.05.02 07:34  
Автор: New Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> ф-я connect вернула -1.
> причину можно узнать вызвав WSAGetLastError.
>
> PS. если то что ты привел - весь исходник, то и не должно
> ничего отправляться:).

Нет исходник не весь - только тот участок,где ошибка выдается - connect

> PPS. не выпендривайся, напиши то что тебе надо на С, потом
> переделаешь на асм, если будет нужда:).

Да я не выпендриваюсь - тока на с++ не очень хочется делать - слабо понимаю этот язык - я ж не программист

На с++ у меня тоже есть исходники - и таже самая история - ничего не отправляется - ошибка на функции connect

А на тех сайтах,где они были взяты утверждается,что все работает - так что не знаю....

WSAGetLastError - я посмотрю это дело конечно,но думаю,что что-то другое
У меня есть исходник на делфи - и он работает

А на с++ и асме не работают
RFC почитай. 07.05.02 05:04  
Автор: Renkvil <Boris> Статус: Member
<"чистая" ссылка>
> Нет исходник не весь - только тот участок,где ошибка

Поделись с народом исходним.
Можно ссылкой.

> Да я не выпендриваюсь - тока на с++ не очень хочется делать
> - слабо понимаю этот язык - я ж не программист

Интересная формулировка. :-)

> А на тех сайтах,где они были взяты утверждается,что все
> работает - так что не знаю....

И где эти сайты?
нашел я причину 07.05.02 05:01  
Автор: йцукенг <jcukeng> Статус: Member
<"чистая" ссылка>
server db 'smtp.yandex.ru",0
- вот такой должен быть адрес вместо
server db 'yandex.ru',0
неудивительно, что коннект не срабатывал:)

ЗЫ. для pop3, кстати, адрес pop.yandex.ru

источник информации http://mail.yandex.ru/text/help.html

http://mail.yandex.ru/text/help.html
спасибо йцукенгу (исходник здесь же) 07.05.02 07:47  
Автор: New Статус: Незарегистрированный пользователь
<"чистая" ссылка>
> server db 'smtp.yandex.ru",0
> - вот такой должен быть адрес вместо
> server db 'yandex.ru',0
> неудивительно, что коннект не срабатывал:)
>
> ЗЫ. для pop3, кстати, адрес pop.yandex.ru
>
> источник информации http://mail.yandex.ru/text/help.html


ТОЧНО - все в этом и было
Пишут исходники,а про такие вещи не упоминают

Кстати еще прикол вчера наблюдал - не знаю чем и объяснить
В TD поставил бряк на connect (делфи вариант программы) - ф9 - появляемся где надо - ф8 - функция выполняется и в EAX тоже FFFFFFFF
Открываю аутглюк - а там письмо,которое должно было отправиться
Совсем непонятно стало

Вчера весь день ковырял свой асм-вариант - сделал,что в дебаггере никаких ошибок нету - ни на connect - ни на send - а письмо все равно не отправляется - то есть после send в eax содержится число переданных байт - ошибок вроде никаких - а письма нету

.386
.model flat, stdcall
option casemap :none

include \masm32\include\windows.inc
include \masm32\include\wsock32.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
include \masm32\include\gdi32.inc
include \masm32\include\comdlg32.inc
include \masm32\include\advapi32.inc
includelib \masm32\lib\wsock32.lib
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\gdi32.lib
includelib \masm32\lib\comdlg32.lib
includelib \masm32\lib\advapi32.lib

_send PROTO

.data
server db "213.180.193.106",0 ;тут я пошел другим путем,если не
;понимает yandex.ru,то поймет этот
helo_ db "HELO yandex.ru",13,10
mfrom_ db "MAIL FROM: ну тут типа адрес",13,10
rcpt_ db "RCPT TO: тут типа тоже адрес",13,10
datas_ db "DATA",13,10
from_ db "FROM: Sender ",13,10
to_ db "TO: Victim ",13,10
sub_ db "SUBJECT: Bla",13,10
this_ db "This is an e-mail",13,10
point_ db ".",13,10
quit_ db "QUIT",13,10

.data?
hInstance dd ?
wsa WSADATA <?>
sockaddr_1 sockaddr_in <?>
fd dd ?

.code
start:
invoke WSAStartup,101h,offset wsa

invoke socket,AF_INET,SOCK_STREAM,0
mov fd,eax ;это сохранили хэндл сокета

mov sockaddr_1.sin_family,AF_INET
invoke htons,25 ;порт 25
mov sockaddr_1.sin_port,ax

invoke inet_addr,ADDR server
mov sockaddr_1.sin_addr,eax ;вот и все!

invoke connect,fd,ADDR sockaddr_1,sizeof sockaddr_1

lea esi,helo_
mov ecx,16 ;16 - количество переданных байтов
;(было столько в моем варианте)
invoke _send

lea esi,mfrom_
mov ecx,30
invoke _send

lea esi,rcpt_
mov ecx,26
invoke _send

lea esi,datas_
mov ecx,6
invoke _send

lea esi,from_
mov ecx,14
invoke _send

lea esi,to_
mov ecx,12
invoke _send

lea esi,sub_
mov ecx,14
invoke _send

lea esi,this_
mov ecx,19
invoke _send

lea esi,point_
mov ecx,3
invoke _send

lea esi,quit_
mov ecx,6
invoke _send

invoke closesocket,fd

invoke WSACleanup

invoke ExitProcess,eax

_send proc
invoke send,fd,esi,ecx,0
xor ecx,ecx
ret
_send endp

end start
не работает 13.05.02 09:43  
Автор: New Статус: Незарегистрированный пользователь
<"чистая" ссылка>
все равно письмо не приходит
кто-нибудь может поделиться 100% работающим исходником на асме?
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach