summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/net/http.rb2
-rw-r--r--lib/net/pop.rb2
-rw-r--r--lib/net/protocol.rb11
-rw-r--r--lib/net/smtp.rb2
4 files changed, 14 insertions, 3 deletions
diff --git a/lib/net/http.rb b/lib/net/http.rb
index a88e69c0bb..e074dd978e 100644
--- a/lib/net/http.rb
+++ b/lib/net/http.rb
@@ -562,7 +562,7 @@ module Net
class HTTPHeaderSyntaxError < StandardError; end
- class HTTP
+ class HTTP < Protocol
Revision = %q$Revision$.split[1]
diff --git a/lib/net/pop.rb b/lib/net/pop.rb
index 9259750bb0..fa012f1a3a 100644
--- a/lib/net/pop.rb
+++ b/lib/net/pop.rb
@@ -401,7 +401,7 @@ module Net
class POPBadResponse < StandardError; end
- class POP3
+ class POP3 < Protocol
Revision = %q$Revision$.split[1]
diff --git a/lib/net/protocol.rb b/lib/net/protocol.rb
index fd85771dd5..c4dcce9e44 100644
--- a/lib/net/protocol.rb
+++ b/lib/net/protocol.rb
@@ -24,6 +24,17 @@ require 'timeout'
module Net
+ class Protocol
+ private
+ def Protocol.protocol_param( name, val )
+ module_eval(<<-End, __FILE__, __LINE__ + 1)
+ def #{name}
+ #{val}
+ end
+ End
+ end
+ end
+
class ProtocolError < StandardError; end
class ProtoSyntaxError < ProtocolError; end
class ProtoFatalError < ProtocolError; end
diff --git a/lib/net/smtp.rb b/lib/net/smtp.rb
index b963204160..276c979b20 100644
--- a/lib/net/smtp.rb
+++ b/lib/net/smtp.rb
@@ -233,7 +233,7 @@ require 'digest/md5'
module Net
- class SMTP
+ class SMTP < Protocol
Revision = %q$Revision$.split[1]