Thread View: pl.comp.lang.perl
11 messages
11 total messages
Started by Grzegorz Szyszlo
Sat, 31 May 1997 10:01
poczta 25
Author: Grzegorz Szyszlo
Date: Sat, 31 May 1997 10:01
Date: Sat, 31 May 1997 10:01
16 lines
1328 bytes
1328 bytes
czy ktos ma, lub wie gdzie w sieci jest skrypcik w perlu,
ktory bezposredno laczy sie na port 25 wskazanego serwera i sam
bezposredno wysyla list ?
bo jesli nie ma, to co najwyzej zmarnuje 2 dni na napisanie czegos
takiego i wytestowanie. ale wolalbym gotowca.
to na razie, z gory dzieki :) choc na razie nie wiem za co :))))
ps: pewnie spytacie po co mi to ? odpowiadam. do zrobienia bramki mailowej.
--
oOOo /====================================\
/=====\__/====/ http://avalon.wbc.lublin.pl/~znik/ |
| Grzegorz Szyszlo mailto:znik@avalon.wbc.lublin.pl |
\===================================================/
polecam http://www.agh.edu.pl/ogonki/ mime.html
Re: poczta 25
Author: Piotr Piatkowski
Date: Sun, 01 Jun 1997 13:47
Date: Sun, 01 Jun 1997 13:47
19 lines
1163 bytes
1163 bytes
Grzegorz Szyszlo <znik@avalon.wbc.lublin.pl> wrote: : czy ktos ma, lub wie gdzie w sieci jest skrypcik w perlu, : ktory bezposredno laczy sie na port 25 wskazanego serwera i sam : bezposredno wysyla list ? A nie wystarczy Ci: open( SM, "|/usr/sbin/sendmail $to_email" ) print SM "From: znik@avalon.wbc.lublin.pl\n"; print SM "To: jasio@fasola.org\n"; print SM "Subject: Blablabla\n"; print SM "\n"; print SM "A tutaj reszta...\n"; close SM ? -- Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Re: poczta 25
Author: Grzegorz Szyszlo
Date: Mon, 02 Jun 1997 14:04
Date: Mon, 02 Jun 1997 14:04
29 lines
1691 bytes
1691 bytes
kompas@galaxy.uci.agh.edu.pl (Piotr Piatkowski) wrote:
>Grzegorz Szyszlo <znik@avalon.wbc.lublin.pl> wrote:
>: czy ktos ma, lub wie gdzie w sieci jest skrypcik w perlu,
>: ktory bezposredno laczy sie na port 25 wskazanego serwera i sam
>: bezposredno wysyla list ?
>
>A nie wystarczy Ci:
>
>open( SM, "|/usr/sbin/sendmail $to_email" )
>print SM "From: znik@avalon.wbc.lublin.pl\n";
>print SM "To: jasio@fasola.org\n";
>print SM "Subject: Blablabla\n";
>print SM "\n";
>print SM "A tutaj reszta...\n";
>close SM
>
>?
>Piotr Pi±tkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
dzieki :) fajne to, proste i latwe. ale mi chodzilo o
bezposrednie operowanie na konekcji TCP .
--
oOOo /====================================\
/=====\__/====/ http://avalon.wbc.lublin.pl/~znik/ |
| Grzegorz Szyszlo mailto:znik@avalon.wbc.lublin.pl |
\===================================================/
polecam http://www.agh.edu.pl/ogonki/ mime.html
Re: poczta 25
Author: Piotr Piatkowski
Date: Tue, 03 Jun 1997 15:38
Date: Tue, 03 Jun 1997 15:38
70 lines
2902 bytes
2902 bytes
Grzegorz Szyszlo <znik@avalon.wbc.lublin.pl> wrote:
: >A nie wystarczy Ci:
: >
: >open( SM, "|/usr/sbin/sendmail $to_email" )
: dzieki :) fajne to, proste i latwe. ale mi chodzilo o
: bezposrednie operowanie na konekcji TCP .
Skoro nalegasz... Możesz to zrobić na "niskim poziomie", za pomocą
modułu Socket (perldoc Socket):
use Socket;
$proto = getprotobyname('tcp');
socket(SOCK, PF_INET, SOCK_STREAM, $proto);
$sin = sockaddr_in(25,inet_aton("localhost"));
connect(SOCK,$sin);
print SOCK "HELO fasola.org\r\n";
print SOCK "MAIL FROM: jasio@fasola.org\r\n";
print SOCK "RCPT TO: grzesio@malinki.com\r\n";
print SOCK "DATA\r\n";
print SOCK ...
print SOCK ".\r\n";
close SOCK;
Możesz to zrobić trochę prościej, łatwiej i przyjemniej za pomocą
modułu IO::Socket (perldoc IO/Socket):
use IO::Socket;
$sock = IO::Socket::INET->new( PeerAddr => "localhost",
PeerPort => 25,
Proto => 'tcp' );
print $sock "HELO fasola.org\r\n";
print $sock "MAIL FROM: jasio@fasola.org\r\n";
print $sock "RCPT TO: grzesio@malinki.com\r\n";
print $sock "DATA\r\n";
print $sock ...
print $sock ".\r\n";
close $sock;
Możesz wreszcie ściągnąć sobie ftp://ftp.pk.edu.pl/pub/lang/perl/CPAN
/modules/by-module/Net/libnet-1.0505.tar.gz, zainstalować przez
tradycyjne perl Makefile.PL;make;make test;make install (ściągnąć i
zainstalować można też za pomocą modułu CPAN, którego jednak nie znam
na tyle żeby Ci wytłumaczyć jak to zrobić :-) ), a potem zrobić to
*jeszcze* prościej (oczywiście perldoc Net/SMTP):
use Net::SMTP;
$smtp = Net::SMTP->new('localhost');
$smtp->mail("jasio@fasola.org");
$smtp->to("grzesio@malinki.com");
$smtp->data;
$smtp->datasend( ... );
$smtp->quit;
We wszystkich przykładach ... oznacza treść listu, ze wszystkimi
należnymi nagłówkami!
No. Jak tak dalej pójdzie, to dorobimy się własnych FMTEYEWTK (patrz:
ftp://ftp.pk.edu.pl/pub/lang/perl/CPAN/doc/FMTEYEWTK/index.html )
Albo raczej ZWNWCKCWNT (ciekawe kto to rozszyfruje) :-)
--
Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Re: poczta 25
Author: Marcin Sperka
Date: Wed, 04 Jun 1997 09:01
Date: Wed, 04 Jun 1997 09:01
20 lines
1056 bytes
1056 bytes
> A nie wystarczy Ci: > > open( SM, "|/usr/sbin/sendmail $to_email" ) > print SM "From: znik@avalon.wbc.lublin.pl\n"; > print SM "To: jasio@fasola.org\n"; > print SM "Subject: Blablabla\n"; > print SM "\n"; > print SM "A tutaj reszta...\n"; > close SM > > ? A gdy to chodzi np. na NT, to co wtedy? Tam nie ma czegos takiego jak Sendmail. -- Marcin Sperka KAMSOFT Katowice POLAND mailto:marcins@kamsoft.com.pl
Re: poczta 25
Author: Grzegorz Szyszlo
Date: Wed, 04 Jun 1997 09:31
Date: Wed, 04 Jun 1997 09:31
23 lines
1393 bytes
1393 bytes
kompas@galaxy.uci.agh.edu.pl (Piotr Piatkowski) wrote:
>use Socket;
[ciach]
>use IO::Socket;
[ciach]
>use Net::SMTP;
[ciach]
>Piotr Pi±tkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
dzieki wodzu, wlasnie takiej odpowiedzi oczekiwalem :))))
ps: pewnie juz sie domyslasz po co mi to potrzebne :)
--
oOOo /====================================\
/=====\__/====/ http://avalon.wbc.lublin.pl/~znik/ |
| Grzegorz Szyszlo mailto:znik@avalon.wbc.lublin.pl |
\===================================================/
polecam http://www.agh.edu.pl/ogonki/ mime.html
Re: poczta 25
Author: Piotr Piatkowski
Date: Wed, 04 Jun 1997 11:50
Date: Wed, 04 Jun 1997 11:50
16 lines
1332 bytes
1332 bytes
Grzegorz Szyszlo <znik@avalon.wbc.lublin.pl> wrote: : kompas@galaxy.uci.agh.edu.pl (Piotr Piatkowski) wrote: : >use Socket; : >use IO::Socket; : >use Net::SMTP; : dzieki wodzu, wlasnie takiej odpowiedzi oczekiwalem :)))) : ps: pewnie juz sie domyslasz po co mi to potrzebne :) Pewnie chcesz zrobić bramki news2mail w perlu (co nie działa zbyt dobrze jak się sam przekonałem) albo zrobić listserver (co pewnie też będzie działać marnie...) -- Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Re: poczta 25
Author: Grzegorz Szyszlo
Date: Wed, 04 Jun 1997 14:07
Date: Wed, 04 Jun 1997 14:07
28 lines
2054 bytes
2054 bytes
kompas@galaxy.uci.agh.edu.pl (Piotr Piatkowski) wrote:
>Pewnie chcesz zrobiæ bramki news2mail w perlu (co nie dzia³a zbyt
>dobrze jak siê sam przekona³em) albo zrobiæ listserver (co pewnie te¿
>bêdzie dzia³aæ marnie...)
>Piotr Pi±tkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Jedno i drugie. przegladalem kod tych ktore mi podeslales, i sie
z lekka zajerzylem jakim cudem to mialo dzialac :)
bede klecil takie bramki, zebym mogl je posadzic na zupelnie
innym hoscie, niz te na ktorych znajduje sie lista mailowa
i grupa newsowa.
sprawe maila mam juz praktycznie zalatwiona. a to wyszukiwanie
bylo mi potrzebne do calkowitego rozbicia naglowka listu
do zmiennej typu % a nie @, dzieki czemu uzyskuje b.latwy
dostep do poszczegolnych pol.
jeszcze tylko musze poszukac, jak wlasciwie wyglada sprawa
nadawania i odbierania listow z NNTP po stronie zwyklego klienta.
--
oOOo /====================================\
/=====\__/====/ http://avalon.wbc.lublin.pl/~znik/ |
| Grzegorz Szyszlo mailto:znik@avalon.wbc.lublin.pl |
\===================================================/
polecam http://www.agh.edu.pl/ogonki/ mime.html
Re: poczta 25
Author: Grzegorz Szyszlo
Date: Wed, 04 Jun 1997 17:27
Date: Wed, 04 Jun 1997 17:27
22 lines
1443 bytes
1443 bytes
Marcin Sperka <marcins@kamsoft.com.pl> wrote:
>> open( SM, "|/usr/sbin/sendmail $to_email" )
>> print SM "From: znik@avalon.wbc.lublin.pl\n";
>> print SM "To: jasio@fasola.org\n";
>> print SM "Subject: Blablabla\n";
>> print SM "\n";
>> print SM "A tutaj reszta...\n";
>> close SM
>A gdy to chodzi np. na NT, to co wtedy? Tam nie ma czegos takiego jak
>Sendmail.
>Marcin Sperka
jest tez wersja sendmaila na enteka.
--
oOOo /====================================\
/=====\__/====/ http://avalon.wbc.lublin.pl/~znik/ |
| Grzegorz Szyszlo mailto:znik@avalon.wbc.lublin.pl |
\===================================================/
polecam http://www.agh.edu.pl/ogonki/ mime.html
Re: poczta 25
Author: Piotr Piatkowski
Date: Wed, 04 Jun 1997 18:04
Date: Wed, 04 Jun 1997 18:04
11 lines
1035 bytes
1035 bytes
Marcin Sperka <marcins@kamsoft.com.pl> wrote: : > A nie wystarczy Ci: : > : > open( SM, "|/usr/sbin/sendmail $to_email" ) : A gdy to chodzi np. na NT, to co wtedy? Tam nie ma czegos takiego jak : Sendmail. A to już trzeba zgłosić do Micro$oftu :-> -- Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Re: poczta 25
Author: Jerzy Kedra
Date: Thu, 05 Jun 1997 16:22
Date: Thu, 05 Jun 1997 16:22
42 lines
1590 bytes
1590 bytes
Grzegorz Szyszlo <znik@avalon.wbc.lublin.pl> wrote:
> czy ktos ma, lub wie gdzie w sieci jest skrypcik w perlu,
> ktory bezposredno laczy sie na port 25 wskazanego serwera i sam
> bezposredno wysyla list ?
Spróbuj coś takiego:
#!/usr/bin/perl
#
use Socket;
use FileHandle;
# funkcja do otwierania socketa
#
sub opensocket {
my($remote,$port,$iaddr,$paddr,$proto);
$remote = 'localhost';
$port = 25; # sendmail
if ($port =~ /\D/) { $port = getservbyname($port, 'tcp') }
die "No port" unless $port;
$iaddr = inet_aton($remote) || die "no host: $remote" ;
$paddr = sockaddr_in($port, $iaddr);
$proto = getprotobyname('tcp');
socket(SOCK, PF_INET, SOCK_STREAM, $proto) || die "socket: $!";
connect(SOCK, $paddr) || die "connect: $!";
SOCK->autoflush(1);
<SOCK>;
}
# zamknij powyższy socket
#
sub closesocket {
print SOCK "quit\n";
close (SOCK) || die "close: $!";
}
&opensocket();
# [...]
# tutaj sobie wstaw jakieś operacje na sockecie
# [...]
&closesocket();
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads