Kudy na sockety?
xfurman na sun.felk.cvut.cz
xfurman na sun.felk.cvut.cz
Úterý Prosinec 8 12:44:23 CET 1998
=?iso-8859-2?Q?Petr_=A9najdr?= wrote:
Dobry den,
>
> Dne 8. prosince 1998 v 11:49 Martin Mares napsal(a):
> >
> > Zdravim,
> >
> > > Jak zavrit socket,ale komplikace je v tom
> > > ze libovolny tj. i ten, ktery jsem ani
> > > neotevrel (tj. ho otevrela nejaka jina
> > > aplikace ;-))?
> >
> > A jaky mam na tento socket odkaz?
>
> No to by mohlo byt soucasti otazky :-)
> Je mi jedno na jake urovni i za predpokladu
> nutnosti zasahnout do jadra (minimalne pro
> ziskani tech odkazu). Jednoducha verze
> je:
> - neco co uzavre vsechny sockety
> (No to neni moc dobry napad)
>
> Slozitejsi:
> - uzavre jen nektere dle nejakeho vyberu
> (port, adresa, pocet prectenych- zapsanych
> dat...)
No tak pokud se chcete hrabat v jadre, tak existuji fce
udp_v4_lookup(src-addr,src-port,dst-addr.dst-port)
tcp_v4_lookup( --||-- )
ktery na zaklade zadanych parametru vrati pointr na strukturu sock.
Potom muzete zavolat fci udp_close(*sock,timeout) nebo
tcp_close(*sock,timeout)
Patricne fce jsou definovany v souborech /usr/src/linux/net/ipv4/udp.c a
tcp.c
Snad Vam to alespon trochu pomuze.
Jan Furman (xfurman na sun.felk.cvut.cz)
Další informace o konferenci Linux