Comments (4)
Did you have a look at the examples https://github.com/vincenthz/hs-connection/tree/master/examples ?
It should give you enough insight to get you started. a Connection
object is very similar to a Handle
, but you have to use the function coming from the Network.Connection
module to write and read.
from hs-connection.
Yes, I did look at the examples, and am able to establish an SSL connection in the following way:
main = do
ctx <- initConnectionContext
con <- connectTo ctx $ ConnectionParams
{ connectionHostname = myserver
, connectionPort = myport
, connectionUseSecure = Just def
, connectionUseSocks = Nothing
}
connectionPut con . C.pack $ "NICK " ++ mynick
r <- connectionGetChunk con
putStrLn $ show r
connectionClose con
This works nicely. But, referring to my previous example, should I do anything like hSetBuffering h NoBuffering
?
And.. being greedy with my questions, hope you don't mind...
you have to use the function coming from the Network.Connection module to write and read
For sending I guess this means using ConnectionPut
. For receiving, I'm not sure.. would you recommend ConnectionGetChunk
, or ConnectionGetLine
...
Thanks 👍
from hs-connection.
connectionGetLine
is practical for textual protocol like imap/pop3 or irc. Otherwise connectionGet
is useful for a binary protocol.
connectionGetChunk
is useful when you use a stream construction like conduit
, pipe
or io-streams
from hs-connection.
Thanks, @vincenthz. I have gotten it to work, thanks for helping.
This package does make SSL connections very simple. Nice work.
from hs-connection.
Related Issues (20)
- connectionInfo
- Don't get an exception on a timeout HOT 1
- IPv6? HOT 8
- Wait for data with a timeout
- TLSSettingsSimple is too simple, TLSSettings is unwieldy HOT 1
- https://badssl.com/ test failure HOT 2
- Connection-0.2.6 breaks Amazonka (stackage lts-6.12 on up) HOT 17
- Support for HsOpenSSL HOT 1
- Potential open socket leak when TLS handshake fails HOT 2
- Socket/Handle leak in versions 0.2.6 and 0.2.7 HOT 9
- Ambiguous docs on re-using TLS sessions
- Error compiling connection-0.3.0 HOT 2
- sessionResumeOnlyOnce HOT 3
- Confusing docs on connectionGetLine
- Export `globalCertificateStore` field of `ConnectionContext`
- Need away to set socket options on a connection backed by a socket
- Specify whether IPv6 addresses are bracketed in HostName (and export HostName) HOT 1
- HostNotResolved can never happen?
- connection-0.2.5 fails to build with GHC 9.0.2 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hs-connection.