Tein web ohjelmointia fpc:llä ja fpSocketeilla(Socket unit) mm. udp server/client tuli testattua ensin tuolla ja sitten törmäsin Synapse:en, jolla pystyi tekemään saman(synsock unit), mutta myös useita protokollia oli suoraan tuettuna kuten http/https, ftp.
Synapse:ssa on aika elegantti wrapperi toteutettu c-sockettikirjaston ympärille, jos kiinnostaa miten c:llä toteutettuja kirjastoja voi käyttää fpc/lazarus ympäristössä, niin kannattaa tutustua miten wrapperi on toteutettu tuossa.
Molemmat kirjastot toimii, mutta vaatii aika tarkkaa tietoa sockettien toiminnasta ja mm. recvfrom-funktio oli todellinen kiusankappale saada toimimaan - ennen kuin speksistä tuli luettua, että sen palauttama client:n osoite on pointterin päässä ja kyseisen kentän pituuden maksimi on asetettava jotenkin järkevästi:
uses Sockets;
var
pClientAddr: ^SockAddr;
pClientLen: ^uint32;
begin
...
new(pClientAddr);
new(pClientLen);
...
datan vastaanotto serverille:
pClientLen^ := 30;
buf_size := fpRecvFrom(Soc,@buf[0],cMaxBufSize,0, psockaddr(pClientAddr),pClientLen);
ja datan palautus client:lle vastaavasti:
fpSendTo(Soc,@buf[0],buf_size,0,pClientAddr,pClientLen);
Jotenkin tuntuu, että aihe on hieman vaikea jos ei tunne socket:eja jo ennalta ja voi kannattaa mennä helpomman kautta ja käyttää vähintään Synapse:n tarjoamaa blocksock-unittia. Esim. http-tiedoston vastaanotto oli todella helppo toteuttaa.
Niin se kysymys, eli onkohan noita kirjastoja netin käpistelyyn vielä muitakin yleisessä käytössä vai näilläkö pitää pärjätä?
web ohjelmointia
26
595
Vastaukset
- Anonyymi
Socket-ohjelmointiin löytyy aloittelijan ohje - tosin c-kielellä - mutta sitä on kohtuullisen helppoa soveltaa koska fpc:ssä taustalla oleva API on kuitenkin sama:
https://beej.us/guide/bgnet/
Protokollakohtaisia kirjastoja on paljonkin tarjolla, mutta socketeille taitaa olla vain nämä kaksi.- Anonyymi
Miksi vanhat papat leikkii windows10llä
Mistä siinä on kysymys, kun papparainen Ieikkii päivästä toiseen windows 10:llä? Valehdelllen että se toimisi. - Anonyymi
Persereikäpeter se menee edelleen viimevuosituhannen opein perse edellä puuhun!
- Anonyymi
VAROITUS:
recvfrom() -on ERITTÄIN ongelmallinen funktio !
Eikä syy ole Synapsessa / Delphissä / FreePascalissa, vaan Windowsissa !
(Ei ole tiedossani, onko Linuxissa sama ongelma vai eikö ole, sen joudut selvittämään itse).
En enää muista kaikkia yksityiskohtia, mutta JOKO tuo RecvFrom hukkaa paketteja (nyt EI OLE kyse paketin hukkumisesta internetissä, mikä sekin on toki mahdollista) tai sitten paketin lähettäjätieto vääristyy !
Eli, jos samalla socketilla teet useita RecFrom() -kutsuja, niin edellinen RecFrom() -kutsu voi vaikuttaa seuraavaan vääristämällä tiedon siitä, mistä IP -osoitteesta ko. paketti tuli !
Ilmeisesti Microsoftin mielestä vain TCP:llä on merkitystä ja UDP:n osalta "toimii jos toimii, eikä sillä ole väliä".
En muista, löytyikö tuohon mitään todellista ratkaisua.
Synapsesta:
Toimii http -protokollan osalta erinomaisen hyvin.
Valitettavasti https -protokollan osalta ei voi sanoa samaa.
Joihinkin palvelimiin toimii hyvin, toisiin ei ollenkaan.
Nuo SSL / TLS -toteutukset ilmeisesti ovat varsinaista versiosotkua, eli yksi toteutus ei välttämättä oikein toimi yhteen toisen kanssa.
OpenSSL on varmaankin käytetyin, mutta sen rakenne on lähinnä sekopäinen.
Sitten on Peter Gutmannin tekemä Cryptlib. Toimii oikein hyvin, mutta muissa kuin GPL -lisensioiduissa ohjelmissa sen käyttö on maksullista.
OpenSSL:ssä myös tietoturvahistoria on kehno. Muistaako kukaan enää vuoden 2014 isoa juttua: HeartBleed.
Tuo yksittäinen vika on ehkä korjattu, mutta kuinka monta muuta tietoturvareikää piilee OpenSSL:n sisuksissa ?
C-kielellä tehdystä koodista yleisin kääntöjärjestelmä on autoconf/automake, mutta kun edes se ei kelvannut OpenSSL:n tekijöille.
MIKSI pitää OpenSSL:n kääntämisestä tehdä niin tuhottoman vaikeaa ?- Anonyymi
Windows todella surkea?
Luin jostain uutisesta että Windows on todella paska tai huono järjestelmä.... - Anonyymi
Anonyymi kirjoitti:
Windows todella surkea?
Luin jostain uutisesta että Windows on todella paska tai huono järjestelmä....Windows on ihan hyvä omiin juttuihinsa, kuten normi desktop-sovelluksiin. Kehitän omia sovelluskirjastoja jotka toimii sekä Linuxissa että Windowsissa. Linuxille on helpompi kehittää ja siellä koodi toimii nopeammin, linux on kuin sovelluskehittäjän työkalupakki, mutta jos taas on aikeissa julkaista vaikka joku pieni maksullinen desktop-sovellus hyötyojelmana, Microsoftin ekosysteemi toimii paremmin ja tarjoaa siihen oman storen ym. Linuxissa taas oletuksena (tai käyttäjät olettaa) että kaikki on ilmaiseksi asennettavissa reposta.
Itse asensin Windowsin uusiksi, koska WSL2 voi ajaa/kehittää Linuxille ja muutosten tuonti käy näppärästi Windowsin puolelle gitin kautta ja päin vastoin. - Anonyymi
"MIKSI pitää OpenSSL:n kääntämisestä tehdä niin tuhottoman vaikeaa ?"
Ihan helpostihan se kääntyy.
"Eikä syy ole Synapsessa / Delphissä / FreePascalissa, vaan Windowsissa !"
Niin vikahan on siinä kun yrität Windowsissa tehdä asioita missä se on huono. - Anonyymi
Anonyymi kirjoitti:
Windows on ihan hyvä omiin juttuihinsa, kuten normi desktop-sovelluksiin. Kehitän omia sovelluskirjastoja jotka toimii sekä Linuxissa että Windowsissa. Linuxille on helpompi kehittää ja siellä koodi toimii nopeammin, linux on kuin sovelluskehittäjän työkalupakki, mutta jos taas on aikeissa julkaista vaikka joku pieni maksullinen desktop-sovellus hyötyojelmana, Microsoftin ekosysteemi toimii paremmin ja tarjoaa siihen oman storen ym. Linuxissa taas oletuksena (tai käyttäjät olettaa) että kaikki on ilmaiseksi asennettavissa reposta.
Itse asensin Windowsin uusiksi, koska WSL2 voi ajaa/kehittää Linuxille ja muutosten tuonti käy näppärästi Windowsin puolelle gitin kautta ja päin vastoin."mutta jos taas on aikeissa julkaista vaikka joku pieni maksullinen desktop-sovellus hyötyojelmana, Microsoftin ekosysteemi toimii paremmin ja tarjoaa siihen oman storen ym. "
Kaikki storet ottavat niin ison provision, että näiden maksuvirityksillä ei tee mitään. Sovellus voi ihan hyvin olla ladattavissa mistä tahansa jos jotain ladataan mutta maksujärjestelyt kannattaa pitää irti storesta.
Mutta jos haluaa julkaista työkalusovelluksen niin että maksaa hurjat provisiot niin tekee softan niin, että on siirrettävissä AppStore, Google Play, Ubuntu store ja Windows store välillä. Näissä kun oli mielestäni tuki maksujärjestelmille. Samsungillakin vissiin vielä joku.
Tällaisten sovellusten tekoon löytyy työkaluiksi esimerkiksi Electron ja Tauri.
Sovelluskehittäjän kannalta näistä ei toimi mikään yhtään paremmin kuin muut.
- Anonyymi
Hyvä tietää tuosta windows-puolesta. Nyt olen testannut sekä tcp:llä että udp:llä noita socketteja ja synapsen avulla saanut lokaali-koneelta jopa apache web-serveriin https-yhteyden onnistumaan. En kääntänyt mitään vaan asensin vaaditut kirjastot pakettivarastosta wiki/nettiesimerkin mukaisesti.
Sanoisin, että udp:n rajapinta on "hiukan" outo joissakin tilanteissa ja esim. sattumalta huomasin, että vaikka udp on yhteydetön, siinä voi olla järkeä kutsua connect:ia client-koodissa, jolloin saa sockettiin täytettyä lisää tietoa.. vai teenkö jotain väärin? Server-koodissa tuo ei toiminut..
Joka tapauksessa kokeilin timerin avulla lähettää 1000 pakettia/s ja ainakaan tuolla nopeudella paketteja ei kadonnut vielä. Paketeilla oli joka kerta eri porttinumerot ja niihin pystyi vastaamaan. Wifi:n yli toki muutamia hukkui matkalla.- Anonyymi
Windowsit tuhoaa suomen kilpailukyvyn koska kukaan ei halua sitä käyttää ja jos töissä pakotetaan - se on sitten suoraan poissa työmotivaatiosta eikä valmista tule.
- Anonyymi
Älä paskaa puhu!
- Anonyymi
Anonyymi kirjoitti:
Windowsit tuhoaa suomen kilpailukyvyn koska kukaan ei halua sitä käyttää ja jos töissä pakotetaan - se on sitten suoraan poissa työmotivaatiosta eikä valmista tule.
"Windowsit tuhoaa suomen kilpailukyvyn koska kukaan ei halua sitä käyttää ja jos töissä pakotetaan - se on sitten suoraan poissa työmotivaatiosta eikä valmista tule."
Naurettava väite!
Enemmän kuin mielelläni koodaisin Delphillä Windows -sovelluksia.
Mutta tämähän ei suomalaisille tympeille IT -johtajille sovi, heidän mielestään pitäisi kai koodata C:llä, C++:lla tai Javalla.
Näin siitä huolimatta, että lopputuloksen laatu Delphillä on erinomainen, ja laatu on ylivoimainen verrattuna kieliin C, C++ ja Java.
Eli jos jossain firmassa halutaan Windowsille koodausta, niin Delphillä olisi kiva päästä sellaisia tekemään.
Ja jos on tarpeen, Delphin uusimmilla versioilla syntyy appeja myös Androidille ja iOS:lle.
Maksullisissa versioissa jopa Linux on tuettu ohjelmien ajoympäristönä . mutta itse Delphi IDE toimii vain Windowsissa. - Anonyymi
Anonyymi kirjoitti:
"Windowsit tuhoaa suomen kilpailukyvyn koska kukaan ei halua sitä käyttää ja jos töissä pakotetaan - se on sitten suoraan poissa työmotivaatiosta eikä valmista tule."
Naurettava väite!
Enemmän kuin mielelläni koodaisin Delphillä Windows -sovelluksia.
Mutta tämähän ei suomalaisille tympeille IT -johtajille sovi, heidän mielestään pitäisi kai koodata C:llä, C :lla tai Javalla.
Näin siitä huolimatta, että lopputuloksen laatu Delphillä on erinomainen, ja laatu on ylivoimainen verrattuna kieliin C, C ja Java.
Eli jos jossain firmassa halutaan Windowsille koodausta, niin Delphillä olisi kiva päästä sellaisia tekemään.
Ja jos on tarpeen, Delphin uusimmilla versioilla syntyy appeja myös Androidille ja iOS:lle.
Maksullisissa versioissa jopa Linux on tuettu ohjelmien ajoympäristönä . mutta itse Delphi IDE toimii vain Windowsissa."Näin siitä huolimatta, että lopputuloksen laatu Delphillä on erinomainen, ja laatu on ylivoimainen verrattuna kieliin C, C++ ja Java."
Ei ole.
Vieläkään ei ole näkynyt Delphillä tehtyjä ohjelmia jotka toimisivat ilman asentamista.
"Maksullisissa versioissa jopa Linux on tuettu ohjelmien ajoympäristönä . mutta itse Delphi IDE toimii vain Windowsissa."
Eli kehittäminen on hankalaa kun ei toimi natiivisti siellä missä koodikin on. Muista että Linux on defacto konesaleissa. - Anonyymi
"Joka tapauksessa kokeilin timerin avulla lähettää 1000 pakettia/s ja ainakaan tuolla nopeudella paketteja ei kadonnut vielä."
EI siinä katoamisessa ole kyse määristä.
Netissä toki voi sattumalta kadota, mutta nyt ei ole kyse siitä.
Vaan tästä:
Jos samalla UDP -socketilla (jota EI connectoida), vaan käytetään recvfrom ja sendto -funktiokutsuja:
Jos samalla UDP -soketilla kommunikoit USEIDEN eri tietokoneiden kanssa, niin windowsissa homma toimii ensimmäisen paketin osalta aivan oikein.
Mutta kun sitten toinen paketti tuleekin eri koneelta omallesi kuin se ensimmäinen, ja vastaat siihen, niin vaikka oma koodisi on oikein tehty, niin tuon 2. paketin lähettäjä ei ikinä saa vastauspakettia - koska se vastauspaketti 2. pakettiin menee virheellisesti sille koneelle, joka lähetti koneellesi sen 1. paketin !
Eli Windows -käyttöjärjestelmä ei aina kunnioita sendto -funktiossa parametrina annettua paikkaa, mihin se UDP -paketti on tarkoitus toimittaa, vaan saattaa toimittaa sen samaan paikkaan, mihin edellinen tai ensimmäinen tuosta UDP -soketista lähettety paketti toimitettiin!
Kyse oli siis Windowsin Bugista TCP/IP -pinon UDP:ta käsittelevässä osassa.
Toki netissäkin voi satunnaisesti paketteja kadota, mutta se taas on asia, joka ei tähän liity mitenkään, vaan tuo satunnaisesti katoilu on syy siihen, miksi UDP:tä sanotaan epäluotettavaksi protokollaksi.
Jos kokeilet sillä timerilla laittaa paketteja useaan eri koneeseen, ja ehkä vielä niin, että ainakin osa paketeista on vastauksia toisen koneen paketteihin, niin huomaat, että windows toimittaa paketteja vääriin kohdeosoitteisiin.
Ehkä Linuxissa toimii paremmin. - Anonyymi
Anonyymi kirjoitti:
"Näin siitä huolimatta, että lopputuloksen laatu Delphillä on erinomainen, ja laatu on ylivoimainen verrattuna kieliin C, C ja Java."
Ei ole.
Vieläkään ei ole näkynyt Delphillä tehtyjä ohjelmia jotka toimisivat ilman asentamista.
"Maksullisissa versioissa jopa Linux on tuettu ohjelmien ajoympäristönä . mutta itse Delphi IDE toimii vain Windowsissa."
Eli kehittäminen on hankalaa kun ei toimi natiivisti siellä missä koodikin on. Muista että Linux on defacto konesaleissa."Vieläkään ei ole näkynyt Delphillä tehtyjä ohjelmia jotka toimisivat ilman asentamista."
JOKAINEN ohjelma asennetaan jollain tavalla, jotta se toimisi.
Delphi -ohjelmalle monesti asennukseksi riittää:
Kopioi ohjelma.exe haluamaasi kansioon ja käynnistä.
Jos pidät ohjelmasta, saatat haluta tehdä sille pikakuvakkeen ja/tai valikkokohdan, jotta ohjelma löytyy helposti jatkossakin.
Delphi -ohjelmissa on maailman helpoin asennus.
Lisäksi ohjelma voidaan tehdä sellaiseksi, että se itse lataa päivityksiä netistä ja osaa päivittää itsensä.
Turvallisuuden takia päivitysmekanismi kannattaa rakentaa niin, että päivityspaketit pystytään kryptotekniikalla tarkistamaan, että ne ovat oikealta tekijältä ja ettei niitä ole muokattu matkan varrella.
M-Kar jaksaa aina valehdella:
Todellisuudessa Delphi -ohjelma usein hakkaa laadussa ja nopeudessa esim. Java -ohjelmat.
Tulee mieleen Arduino IDE -tehty Javalla - ja käynnistyy Delphi -ohjelmiin tottuneen näkökulmasta aivan jätkyttävän hitaasti.
Jos se olisi tehty Delphillä, se käynnistyisi heti eikä odottelun jälkeen.
Jos katsoo ihan Microsoftin omalla "Tehtävienhallinta" (Task Manager) sovellusten muistinkulutuksia, niin Delphi -ohjelmat ovat yleensä kaikkein vähiten muistia kuluttavia ohjelmia.
Ja siitä vähästäkin voi joissain tapauksissa siivota pois, jos sille on tarvetta.
Varsinkin Web -selaimien takia RAM -muistista on jatkuvasti huutava pula - vaikka koneessani on 16 Gigatavua RAM -muistia.
Kyllä ohjelmien muistinkulutuksella on tänäkin päivänä merkitystä.
Mielestäni satoja megatavuja tai gigatavuja RAMmia kuluttava ohjelma on huono ohjelma - vaihtaisin heti parempaan - jos sellaisia olisi saatavilla - mutta Web -selainten osalta ei oikein ole - muistisyöppöjä kaikki !
- Anonyymi
Mitähän ongelmaa tässä yritetään ratkaista?
- Anonyymi
AI -juttuja kun alat laskemaan, niin selvästi hidastuu kyllä joo laskenta teho jos lasketaan jhotain asioita ja analysoidaan niitä 69 potebnsaiin 53 vaikka..
- Anonyymi
Kaiken näköisiä viheltäjiä sitä onkin olemassa, huh hu
- Anonyymi
Linux:issa tuo synapse socket-toteutus nojaa vahvasti libc-kirjastoon ja on siitä wrapper-versio joten toimintakin lienee identtistä. Ratkaistava ongelma oli nimenomaan saada socketit toimimaan fpc:ssä ja synapsen avulla ratkaisu on yhtä "virhe" herkkä kuin c-toteutuskin(joka on ennestään tuttu) joten sen kanssa osaa elää.
Tuo udp-pakettien lähetys kannattaa tosiaan toteuttaa clientissa synkronisesti ettei tule yhtäaikaisten pakettien törmäyksiä eli socketin info-kentät mene sekaisin vaikka eri säikeissä. Vaihtoehtoisesti teen niin, että vastaanotettu socketti, jos serveri-portti oli alunperin vaikka 10000, se vaihtuu joksikin muuksi ja serveriportin voi avata uudelle soketille odottelemaan yhteyksiä. client-pään portti pysyy samana ja vaihtuu vasta jos serveri lähettää. Näin ollen pitää olla vapaita portteja tarjolla socketeille ja yhteydet ei tällöin törmäile keskenään. Itse asiassa, noita soketteja taisi pystyä luomaan useita odottavaan tilaan samalla porttinumerolla jotenkin - en vaan ole varma onnistuuko udp:n kanssa.- Anonyymi
Ottasit nyt helvetti ne lääkkeesi jotta loppuisi tuo loputun sekoilusi.
- Anonyymi
On satoja helpompia tapoja siirtää sivu ftp servuun, kuin mitä sähläät on turvallisiisriski!
- Anonyymi
Saimaanapinahan vaan sotkee asiat!
- Anonyymi
Minä ajattelin että tekisin tuollaisen että joka lähettää sääkuvia tai valvontakuvia itselle sähköpostina sitten, 1 ongelma vain kun uusissa tietokoneissa ei saa olla BIOSissa ominaisuutta että voi määrätä ohjelmallisesti itse jotain aikoja milloin kun tietokone on sammutettu aivan virtakytkimestä.
On sellainen eräs joku vanha I5-prosessorinen kone missä on vielä tuo optio, siis c- ja assembly -koodinen ohjelma voi määrätä milloin tietokone määrittää itse ajat milloin käynnistyy ja sulkeutuu, siis ei sleep-modeissa vaan aivan kun on virta pois siis RTC, Real Time Clock -ohjelmointia :D- Anonyymi
" kun uusissa tietokoneissa ei saa olla BIOSissa ominaisuutta että voi määrätä ohjelmallisesti itse jotain aikoja milloin kun tietokone on sammutettu aivan virtakytkimestä"
Mikäs juttu tuo nyt oli olevinaan ????
Jos virta sammutetaan ohjelmallisesti, niin jos tätä ennen on asetettu "RTC ON @ 2023-12-31T22:50:00", niin sitten kone todellakin käynnistyy automaattisesti asetettuna aikana.
Jos taas katkaiset virran virthalähteen mekaanisella "0/1" -kytkimellä, niin ei tietenkään käynnisty automaattisesti koskaan (koska tuo mekaaninen kytkin vastaa sitä, että irrottaisit PC:N pistokkeen pistorasiasta).
Yritätkö nyt väittää, että jokin määräys (MIKÄ ?) kieltäisi tietokoneen valmistajaa laittamasta koneeseen vanhaa tuttua "RTC ON" -ominaisuutta ?
Entäpä muut "AUTO ON" -toiminnallisuudet ?
Teoriassa olisi "Wake-On-Lan" , mutta olen kokeillut, eikä toiminut (vaatiiko tuo jonkin ylimääräisen kaapelin verkkokortin ja emolevyn välille, tai ns. jumpperin, jos verkkokortti on emolevylle integroitua mallia, kuten moderneissa koneissa hyvin usein on ?
Sitten on Wake-On-Ring: Jos tuo on tehty oikeasti toimivaksi, niin silloin sarjaportin (COM1) RI (=RingIndicator) tuotu esim. +9V jännite (verrattuna saman portin GND -nastaan) pitäisi aiheuttaa PC:n käynnistyminen, jos tuo Wake-On-Ring -toiminto on ensin BIOS -asetuksista kytketty päälle.
Periaatteessa muuten: Jos käytät 5V jännitteellä erillistä mikrokontrolleria, niin mikrokontrollerin I/O -nastasta vain johto tuohon sarjaportin RI -nastaan: Kun mikrokontrolleri asettaa ko. I/O -nastan tilaan "Looginen 1", niin PC:n pitäisi käynnistyä. Sensijaan 3,3V käyttöjännitteellä on riski, että I/O-nastan jännite jää liian alas, eikä luotettavasti käynnistä PC:tä. Pienellä transistorikytkennällä toki tämänkin voi korjata.
- Anonyymi
Siihen aikaan, kun http oli vielä yleinen (nykyisin on harvinainen, kun joka paikassa on https), niin Synapse oli paras vaihtoehto TCP/IP:n ja UDP:n hallintaan Delphillä ja FreePascalilla.
Jos vielä tarvitset johonkin salaamattomia yhteyksiä, niin niihin toki Synapse toimii tänäkin päivänä.
Paitsi että:
Synapsesta puuttuu Connected -property.
Se on toki jossain määrin feikki, mutta ideana tämä:
Kun asiakassovellus kutsuu connect() ja se onnistuu, niin:
FConnected := True;
Vasta, kun saadaan varma tieto, että yhteys on menetetty, niin:
FConnected := False;
JOS tarvitset https -yhteyksiä, niin on vain 1 vaihtoehto, mitä voi oikeasti suositella:
ICS (by Francois Piette). Hakukoneella: ICS overbyte eu
https:n osalta KAIKKI muut ovat huonoja: saattavat toimia yhden tietyn https -palvelimen kanssa, mutta sitten toisen https -palvelimen kanssa yhteys ei koskaan muodostu, ja syy tähän jää epäselväksi.
Siis asiakas ja palvelin molemmat omasta mielestään noudattavat https -standardia, mutta eivät todellisuudessa ole yhteensopivia keskenään.
ICS:n kanssa näin ei ole vielä käynyt kertaakaan.
Sensijaan Sekä Synapse että Indy kärsivät tuosta ongelmasta:
Yhden palvelimen kanssa toimivat, ja toisen kanssa eivät.
Synopsea taas (kyllä, vain 1 kirjaimen ero Synapseen verrattuna) en voi suositella lainkaan sen tällaisen anti-patternin takia:
with TSomeClass.Create do begin
try
// use Object here:
finally
Free;
end;
end;
Debuggaajan painajainen! Mitenkään et pääse käsiksi luotuun objektiin !
Tuosta syystä: älä käytä (kerjäät ongelmia jos käytät)!
Vielä:
Monelle luokkakirjastolle HTTP POST -verbi https -yhteyden kanssa käytettynä on toimimaton yhdistelmä. Muistaakseni ICS selviää kunnialla tuostakin.
Ja koska on avointa lähdekoodia, sitä voi muokata, jos jokin asia ei miellytä.
ICS:n ainoa ehkä miinuspuoli on se, että se käyttää ns. non-blocking socketteja, kun molemat kilpailijat (Indy ja Synapse) käyttävät ns. blokkaavia soketteja.
Mutta kun vastapainoksi saa luotettavasti toimivan https -toteutuksen, joka ei nikottele sen mukaan, mikä palvelin ja ohjelmistoversio on palvelimen päässä, niin ehkä tämän sietää.
Eli: salaamattomiin yhteyksiin: Synapse, mutta https:ää tarvittaessa: Synapse.
Ohjetta ei toki ole pakko noudattaa, mutta kerjäät ongelmia, jos et noudata. Valinta on toki lopulta omasi.- Anonyymi
10 miljardia salasanaa jaossa - kaikkien aikojen suurin salasanavuoto
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Ketjusta on poistettu 2 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Kiitos nainen
Kuitenkin. Olet sitten ajanmerkkinä. Tuskin enää sinua näen ja huomasitko, että olit siinä viimeisen kerran samassa paik124540MTV: Kirkossa saarnan pitänyt Jyrki 69 koki yllätyksen - Paljastaa: "Se mikä oli hyvin erikoista..."
Jyrki Linnankivi alias Jyrki 69 on rokkari ja kirkonmies. Teologiaa opiskeleva Linnankivi piti elämänsä ensimmäisen saar902334Hyväksytkö sinä sen että päättäjämme ei rakenna rauhaa Venäjän kanssa?
Vielä kun sota ehkäpä voitaisiin välttää rauhanponnisteluilla niin millä verukkeella voidaan sanoa että on hyvä asia kun5621769Kirjoita yhdellä sanalla
Joku meihin liittyvä asia, mitä muut ei tiedä. Sen jälkeen laitan sulle wappiviestin1011481- 81369
Olet hyvin erilainen
Herkempi, ajattelevaisempi. Toisaalta taas hyvin varma siitä mitä haluat. Et anna yhtään periksi. Osaat myös ilkeillä ja671177Yksi syy nainen miksi sinusta pidän
on se, että tykkään luomusta. Olet luonnollinen, ihana ja kaunis. Ja luonne, no, en ole tavannut vielä sellaista, joka s331118Hyödyt Suomelle???
Haluaisin asettaa teille palstalla kirjoittelevat Venäjää puolustelevat ja muut "asiantuntijat" yhden kysymyksen pohditt219990Hyvää Joulua mies!
Toivottavasti kaikki on hyvin siellä. Anteeksi että olen hieman lisännyt taakkaasi ymmärtämättä kunnolla tilannettasi, o64957Paljastavat kuvat Selviytyjät Suomi kulisseista - 1 päivä vs 36 päivää viidakossa - Katso tästä!
Ohhoh! Yli kuukausi viidakossa voi muuttaa ulkonäköä perusarkeen aika rajusti. Kuka mielestäsi muuttui eniten: Mia Mill3928