Same here with:

Harbour 2.0.0beta3 (Rev. 12472)
Copyright (c) 1999-2009, http://www.harbour-project.org/

Harbour Build Info
---------------------------
Version: Harbour 2.0.0beta3 (Rev. 12472)
Compiler: GNU C 4.3.3 (32-bit)
Platform: Linux 2.6.28-15-generic i686
PCode version: 0.2


the prg hang,  how i test it...

I have create a file testmail.prg with this content....

-------------------------------------------------------------------------------------------

procedure main

    local cServer       :=      "192.168.100.18"
    local nPort         :=      25
    local cFrom         :=      "marco...@mypc"
    local aTo           :=      {"marco...@mypc"}
    local aCC           :=      {"marco...@mypc"}
    local aBCC          :=      {"marco...@mypc"}
    local cBody         :=      "test"
    local cSubject      :=      "Test from Harbour..."
    local aFiles        :=      {}
    local cUser         :=      "marcobra"
    local cPass         :=      ""
    local cPopServer    :=      "192.168.100.18"
    local nPriority     :=      3
    local lRead         :=      .f.
    local bTrace        :=      .t.
    local lPopAuth      :=      .f.
    local lNoAuth       :=      .f.
    local nTimeOut      :=      2000
    local cReplyTo      :=      "marco...@mypc"
    local lTLS          :=      .f.
    local cSMTPPass     :=      ""

   ? "sending mail"
      hb_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody,
cSubject, aFiles, cUser, cPass, cPopServer, nPriority, lRead, bTrace,
lPopAuth, lNoAuth, nTimeOut, cReplyTo, lTLS, cSMTPPass )
   ? "finish send"
 return


// FUNCTION hb_SendMail( cServer, nPort, cFrom, aTo, aCC, aBCC, cBody,
cSubject, aFiles, cUser, cPass, cPopServer, nPriority, lRead, bTrace,
lPopAuth, lNoAuth, nTimeOut, cReplyTo, lTLS, cSMTPPass )

   /*
   cServer    -> Required. IP or domain name of the mail server
   nPort      -> Optional. Port used my email server
   cFrom      -> Required. Email address of the sender
   aTo        -> Required. Character string or array of email addresses
to send the email to
   aCC        -> Optional. Character string or array of email adresses
for CC (Carbon Copy)
   aBCC       -> Optional. Character string or array of email adresses
for BCC (Blind Carbon Copy)
   cBody      -> Optional. The body message of the email as text, or the
filename of the HTML message to send.
   cSubject   -> Optional. Subject of the sending email
   aFiles     -> Optional. Array of attachments to the email to send
   cUser      -> Required. User name for the POP3 server
   cPass      -> Required. Password for cUser
   cPopServer -> Required. POP3 server name or address
   nPriority  -> Optional. Email priority: 1=High, 3=Normal (Standard),
5=Low
   lRead      -> Optional. If set to .T., a confirmation request is send.
Standard setting is .F.
   bTrace     -> Optional. If set to .T., a log file is created
(smtp-<nNr>.log). Standard setting is NIL.
                           If a block is passed, it will be called for
each log event with the message a string, no param on session close.
   lPopAuth   -> Optional. Do POP3 authentication before sending mail.
   lNoAuth    -> Optional. Disable Autentication methods
   nTimeOut   -> Optional. Number os ms to wait default 20000 (20s)
   cReplyTo   -> Optional.
   lTLS       -> Optional. Default .F., connect to the server using
Secure Socket Layer connection (pop3s, smtps)
   */

-------------------------------------------------------------------------------------------

Then i compile with...

hbmk2 -lhbtip -lpcre -static testmail

then i run with

./testmail

it hang the timeout is not working and i must kill the process from
another terminal

i can see this smtp.log in the same dir of running testmail

20090911-10:53:36  :INETCONNECT( 192.168.100.18, 25 )
>> <pointer> <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETSENDALL( <pointer>, 15, EHLO marcobra )
>>         15 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 220 mymailserverpc.xxx.xxx ESMTP Postfix (Ubuntu) <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-mymailserverpc.xxx.xxx <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-PIPELINING <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-SIZE 153600000 <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-VRFY <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-ETRN <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-STARTTLS <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-ENHANCEDSTATUSCODES <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250-8BITMIME <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:36  :INETRECVLINE( <pointer>, , 512 )
>> 250 DSN <<

20090911-10:53:36  :INETERRORCODE( <pointer> )
>>          0 <<

20090911-10:53:37  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:37  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:38  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:38  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:39  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:39  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:40  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:40  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:41  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:41  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:42  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:42  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:43  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:43  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:44  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:44  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:45  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:45  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:46  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:46  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:47  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:47  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:48  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:48  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:49  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:49  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:50  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:50  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:51  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:51  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:52  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:52  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:53  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:53  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:54  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:54  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:55  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:55  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:56  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:56  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:57  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:57  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:58  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:58  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:53:59  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:53:59  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:00  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:00  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:01  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:01  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:02  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:02  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:03  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:03  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:04  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:04  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:05  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:05  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:06  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:06  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:07  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:07  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:08  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:08  :INETERRORCODE( <pointer> )
>>         -1 <<

20090911-10:54:09  :INETRECVLINE( <pointer>, , 512 )
>>  <<

20090911-10:54:09  :INETERRORCODE( <pointer> )
>>         -1 <<
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to