AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

irc dcc gets/sends

Ein Thema von sECuRE · begonnen am 27. Apr 2003 · letzter Beitrag vom 4. Jan 2004
Antwort Antwort
Benutzerbild von sECuRE
sECuRE

Registriert seit: 10. Apr 2003
Ort: Heidelberg
360 Beiträge
 
Delphi 7 Professional
 
#1

irc dcc gets/sends

  Alt 27. Apr 2003, 14:38
Hi!
ich bin grade dabei, einen irc-client zu entwickeln komme beim Thema DCC nicht mehr weiter:
momentan öffne ich eine Verbindung zum anderen Client, der mir zuvor gesagt hat, auf welchem port/ip usw.. Dann fängt der andere Client an mir die Daten zu schicken, allerdings hört er nach ca 5 oder 6 packets auf, weil er eine Bestätigung erwartet. Wenn ich jetzt nach jedem Packet eine Bestätigung mit 4 Bytes Länge schicke (wie im RFC vorgeschrieben), stürzt der Client mit einer Zugriffsverletzung ab..
mein Sourcecode sieht so aus:
Delphi-Quellcode:
procedure TForm2_1.DCCSockRead(Sender: TObject; Socket: TCustomWinSocket);
var c,ret:integer;szBuffer: array[0..8192] of Char;
begin
c:=StrToInt(GetToken(TClientSocket(Sender).Name,'_',2));
FillChar(szBuffer, SizeOf(szBuffer), 0);
ret:=Socket.ReceiveBuf(szBuffer[1], SizeOf(szBuffer));
dcc_f[c].Write(szBuffer[1], ret);
socket.SendText(dcc_f[c].Size);
end;
Auszug aus dem DCC-RFC:
Zitat:
Data is sent in packets, rather than dumped in a stream manner. This allows the DCC SEND connection to survive where an FTP connection might fail. The size of the packets is up to the client, and may be set by the user. Smaller packets result in a higher probability of survival over bad links. The recipient should acknowledge each packet by transmitting the total number of bytes received as an unsigned, 4 byte integer in network byte order. The sender should not continue to transmit until the recipient has acknowledged all data already transmitted. Additionally, the sender should not close the connection until the last byte has been acknowledged by the recipient.
Was stimmt denn daran jetzt nicht?!
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#2
  Alt 27. Apr 2003, 14:52
Hallo,

ich habe es mal nach Internet/IP/Lan verschoben.

Grüsse, Daniel
  Mit Zitat antworten Zitat
sharkx

Registriert seit: 25. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#3
  Alt 27. Apr 2003, 16:32
Hier gibt es mehrere Beispiele zu IRC Clienten. Unteranderem auch das DCC behandelt.

Torry
  Mit Zitat antworten Zitat
Benutzerbild von sECuRE
sECuRE

Registriert seit: 10. Apr 2003
Ort: Heidelberg
360 Beiträge
 
Delphi 7 Professional
 
#4
  Alt 27. Apr 2003, 17:20
die page kannte ich schon, die einzige open source komponente, die dcc unterstützt, hilft mir leider nicht weiter.. die behandelt mein Problem garnicht oder ich bin zu blöd um das zu finden
  Mit Zitat antworten Zitat
Benutzerbild von CrashMan
CrashMan

Registriert seit: 1. Aug 2003
Ort: //127.0.0.1/
65 Beiträge
 
Delphi 6 Personal
 
#5

Re: irc dcc gets/sends

  Alt 4. Jan 2004, 23:05
Bist du weitergekommen?

Sitze gerade selber an einem IRC-Clienten ... beim DCC hakts... (da bleib ich stecken, das hab ich noch net)

Kannst ma eben sagen, wie ich das mache?

CrashMan
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz