summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config.sample1
-rwxr-xr-xnsa10
2 files changed, 10 insertions, 1 deletions
diff --git a/config.sample b/config.sample
index 83754a0..6181947 100644
--- a/config.sample
+++ b/config.sample
@@ -7,6 +7,7 @@
nickservpassword: xxxxxxxxxxxxxxxx
nickserv_is_smart: true
port: 6667
+ ssl: false
mailin: /home/commit/Maildir
projects:
'oftc': [ '#oftc' ]
diff --git a/nsa b/nsa
index 46d514d..45f32f2 100755
--- a/nsa
+++ b/nsa
@@ -22,6 +22,7 @@
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
require 'socket'
+require 'openssl'
require 'yaml'
require 'monitor'
@@ -65,7 +66,14 @@ class Connection
@outQueue.extend(MonitorMixin)
@outEmpty = @outQueue.new_cond
- @sock = TCPSocket.new(CONFIG['irc']['server'], CONFIG['irc']['port']);
+ tcpsock = TCPSocket.new(CONFIG['irc']['server'], CONFIG['irc']['port']);
+ if CONFIG['irc']['ssl']
+ ctx = OpenSSL::SSL::SSLContext.new
+ @sock = OpenSSL::SSL::SSLSocket.new(tcpsock, ctx)
+ @sock.connect
+ else
+ @sock = tcpsock
+ end
puts "Connected!"
createInThread