diff --git a/Hacking.rdoc b/Hacking.rdoc index 072cf01..0945251 100644 --- a/Hacking.rdoc +++ b/Hacking.rdoc @@ -1,19 +1,68 @@ = Hacking on Net::LDAP +We welcome your contributions to Net::LDAP. We accept most contributions, but +there are ways to increase the chance of your patch being accepted quickly. + +== Licensing + +Net::LDAP 0.2 and later are be licensed under an MIT-style license; any +contributions after 2010-04-20 must be under this license to be accepted. + +== Formatting + +* Your patches should be formatted like the rest of Net::LDAP. +* We use a text wrap of 76–78 characters, especially for documentation + contents. +* Operators should have spaces around them. +* Method definitions should have parentheses around arguments (and no + parentheses if there are no arguments). +* Indentation should be kept as flat as possible; this may mean being more + explicit with constants. + + We welcome your contributions to Net::LDAP. To increase the chances of your patches being accepted, we recommend that you follow the guidelines below: -1. Your code should be formatted like the rest of Net::LDAP. We use a text - wrap of 76 - 78 characters, especially for documentation contents. - Operators should have spaces around them, method definitions should have - parentheses around arguments. Keep the indentation as flat as possible. -2. Your changes should be well-documented and described. -3. You must provide Rspec tests for any new or changed features. -4. You should provide LDIF data for importing into LDAP servers so that the - changes can be tested in situ with more than one real LDAP - server. -5. You should have tested your changes against a real LDAP server. -6. Your patch should include modifications to History.rdoc summarizing the - change. -7. If you're a first-time contributor, your patch should include modifications - to Contributors.rdoc. +== Documentation + +* Documentation: {net-ldap}[http://net-ldap.rubyforge.org/] + +It is very important that, if you add new methods or objects, your code is +well-documented. The purpose of the changes should be clearly described so that +even if this is a feature we do not use, we can understand its purpose. + +We also encourage documentation-only contributions that improve the +documentation of Net::LDAP. + +We encourage you to provide a good summary of your as a modification to ++History.rdoc+, and if you're not yet named as a contributor, include a +modification to +Contributors.rdoc+ to add yourself. + +== Tests + +The Net::LDAP team uses RSpec for unit testing; all changes must have rspec +tests for any new or changed features. + +Your changes should have been tested against at least one real LDAP server; the +current tests are not sufficient to find all possible bugs. It's unlikely that +they will ever be sufficient given the variations in LDAP server behaviour. + +If you're introducing a new feature, it would be preferred for you to provide +us with a sample LDIF data file for importing into LDAP servers for testing. + +== Development Dependencies + +Net::LDAP uses several libraries during development, all of which can be +installed using RubyGems. + +* *hoe* +* *hoe-git* +* *metaid* +* *rspec* +* *flexmock* + +== Participation + +* RubyForge: {net-ldap}[http://rubyforge.org/projects/net-ldap] +* GitHub: {ruby-ldap/ruby-net-ldap}[https://github.com/ruby-ldap/ruby-net-ldap/] +* Group: {ruby-ldap}[http://groups.google.com/group/ruby-ldap] diff --git a/History.rdoc b/History.rdoc index f69832c..56e70f0 100644 --- a/History.rdoc +++ b/History.rdoc @@ -1,4 +1,4 @@ -=== Net::LDAP 0.2.0 / 2011-__-__ +=== Net::LDAP 0.2 / 2011-03-__ * Major Enhancements: * Net::LDAP::Filter changes: * Filters can only be constructed using our custom constructors (eq, ge, @@ -14,7 +14,7 @@ Fixed some of the regular expressions to be more canonically defined. * Cleaned up the string representation of Filter objects. * Added experimental support for RFC4515 extensible matching (e.g., - * "(cn:caseExactMatch:=Fred Flintstone)"); provided by "nowhereman". + "(cn:caseExactMatch:=Fred Flintstone)"); provided by "nowhereman". * Minor Enhancements: * SSL capabilities will be enabled or disabled based on whether we can load OpenSSL successfully or not. @@ -25,6 +25,17 @@ * Added some unit tests for the BER core extensions. * Documentation Changes: * Core class extension methods under Net::BER. + * Extensive changes to Net::BER documentation. + * Cleaned up some rdoc oddities, suppressed empty documentation sections + where possible. + * Added a document describing how to contribute to Net::LDAP most + effectively. + * Added a document recognizing contributors to Net::LDAP. +* Extended unit testing: + * Added some unit tests for the BER core extensions. + * The LDIF test data file was split for Ruby 1.9 regexp support. + * Added a cruisecontrol.rb task. + * Converted some test/unit tests to specs. * Code clean-up: * Made the formatting of code consistent across all files. * Removed Net::BER::BERParser::TagClasses as it does not appear to be used. @@ -35,16 +46,18 @@ Pdu#result. This may be changed in Net::LDAP 1.0 to return the full Pdu#result, but if we do so, it will be that way for all LDAP calls involving Pdu objects. + * Renamed Net::LDAP::Psw to Net::LDAP::Password with a corresponding filename + change. + * Removed the stub file lib/net/ldif.rb and class Net::LDIF. * Project Management: * Changed the license from Ruby + GPL to MIT with the agreement of the original author (Francis Cianfrocca) and the named contributors. Versions prior to 0.2.0 are still available under the Ruby + GPL license. - * Added a hacking document and a contributors document. === Net::LDAP 0.1.1 / 2010-03-18 * Fixing a critical problem with sockets. -=== Net::LDAP 0.1.0 / 2010-03-17 +=== Net::LDAP 0.1 / 2010-03-17 * Small fixes throughout, more to come. * Ruby 1.9 support added. * Ruby 1.8.6 and below support removed. If we can figure out a compatible way diff --git a/License.rdoc b/License.rdoc index 03b6036..b4e99ac 100644 --- a/License.rdoc +++ b/License.rdoc @@ -22,3 +22,8 @@ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +=== Notice of License Change + +Versions prior to 0.2 were under Ruby's dual license with the GNU GPL. With +this release (0.2), Net::LDAP is now under the MIT license. diff --git a/Manifest.txt b/Manifest.txt index 71f081f..29a2a11 100644 --- a/Manifest.txt +++ b/Manifest.txt @@ -21,7 +21,10 @@ lib/net/ldap/entry.rb lib/net/ldap/filter.rb lib/net/ldap/password.rb lib/net/ldap/pdu.rb +<<<<<<< HEAD lib/net/ldif.rb +======= +>>>>>>> f46c68dce3be545811041fb344273a9c84d372c4 lib/net/snmp.rb spec/integration/ssl_ber_spec.rb spec/spec.opts diff --git a/README.rdoc b/README.rdoc index e881bad..e9e4ccd 100644 --- a/README.rdoc +++ b/README.rdoc @@ -2,20 +2,24 @@ == Description -Net::LDAP for Ruby implements client access for the Lightweight Directory -Access Protocol (LDAP), an IETF standard protocol for accessing distributed -directory services. Net::LDAP is written completely in Ruby with no external -dependencies. It supports most LDAP client features and a subset of server -features as well. +Net::LDAP for Ruby (also called net-ldap) implements client access for the +Lightweight Directory Access Protocol (LDAP), an IETF standard protocol for +accessing distributed directory services. Net::LDAP is written completely in +Ruby with no external dependencies. It supports most LDAP client features and a +subset of server features as well. -Net::LDAP strives for standards-conformity ({RFC -4511}[http://www.rfc-editor.org/rfc/rfc4511.txt]), but it also provides support -for features in popular non-conforming LDAP servers. +Net::LDAP has been tested against modern popular LDAP servers including +OpenLDAP and Active Directory. The current release is mostly compliant with +earlier versions of the IETF LDAP RFCs (2251–2256, 2829–2830, 3377, and 3771). +Our roadmap for Net::LDAP 1.0 is to gain full client compliance with +the most recent LDAP RFCs (4510–4519, plutions of 4520–4532). == Where * {RubyForge}[http://rubyforge.org/projects/net-ldap] * {GitHub}[https://github.com/ruby-ldap/ruby-net-ldap] +* {ruby-ldap@googlegroups.com}[http://groups.google.com/group/ruby-ldap] +* {Documentation}[http://net-ldap.rubyforge.org/] The Net::LDAP for Ruby documentation, project description, and main downloads can currently be found on {RubyForge}[http://rubyforge.org/projects/net-ldap]. @@ -34,9 +38,14 @@ Net::LDAP is a pure Ruby library. It does not require any external libraries. You can install the RubyGems version of Net::LDAP available from the usual sources. -* gem install net-ldap + gem install net-ldap -Simply require 'net/ldap'. +Simply require either 'net-ldap' or 'net/ldap'. + +For non-RubyGems installations of Net::LDAP, you can use Minero Aoki's +{setup.rb}[http://i.loveruby.net/en/projects/setup/] as the layout of +Net::LDAP is compliant. The setup installer is not included in the +Net::LDAP repository. :include: Contributors.rdoc diff --git a/Rakefile b/Rakefile index f08297d..0922ff5 100644 --- a/Rakefile +++ b/Rakefile @@ -31,6 +31,7 @@ Hoe.spec 'net-ldap' do self.extra_dev_deps << [ "metaid", "~> 1" ] self.extra_dev_deps << [ "flexmock", "~> 0.9.0" ] self.extra_dev_deps << [ "rspec", "~> 2.0" ] + self.clean_globs << "coverage" self.spec_extras[:required_ruby_version] = ">= 1.8.7" diff --git a/lib/net/ber.rb b/lib/net/ber.rb index a403717..b4cdad9 100644 --- a/lib/net/ber.rb +++ b/lib/net/ber.rb @@ -1,4 +1,4 @@ -module Net +module Net # :nodoc: ## # == Basic Encoding Rules (BER) Support Module # @@ -105,7 +105,7 @@ module Net # BMPStringC30: 62 (0x3e, 0b00111110) # module BER - VERSION = '0.1.0' + VERSION = '0.2' ## # Used for BER-encoding the length and content bytes of a Fixnum integer diff --git a/lib/net/ber/core_ext.rb b/lib/net/ber/core_ext.rb index 94da38e..6acc35f 100644 --- a/lib/net/ber/core_ext.rb +++ b/lib/net/ber/core_ext.rb @@ -1,29 +1,5 @@ -# NET::BER -# Mixes ASN.1/BER convenience methods into several standard classes. Also -# provides BER parsing functionality. -# -#-- -# Copyright (C) 2006 by Francis Cianfrocca and other contributors. All -# Rights Reserved. -# -# Gmail: garbagecat10 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -#++ - require 'net/ber/ber_parser' +# :stopdoc: class IO include Net::BER::BERParser end @@ -37,36 +13,49 @@ if defined? ::OpenSSL include Net::BER::BERParser end end +# :startdoc: -module Net::BER::Extensions; end +module Net::BER::Extensions # :nodoc: +end require 'net/ber/core_ext/string' +# :stopdoc: class String include Net::BER::BERParser include Net::BER::Extensions::String end require 'net/ber/core_ext/array' -class Array +# :stopdoc: +class Array include Net::BER::Extensions::Array end +# :startdoc: require 'net/ber/core_ext/bignum' -class Bignum +# :stopdoc: +class Bignum include Net::BER::Extensions::Bignum end +# :startdoc: require 'net/ber/core_ext/fixnum' -class Fixnum +# :stopdoc: +class Fixnum include Net::BER::Extensions::Fixnum end +# :startdoc: require 'net/ber/core_ext/true_class' -class TrueClass +# :stopdoc: +class TrueClass include Net::BER::Extensions::TrueClass end +# :startdoc: require 'net/ber/core_ext/false_class' -class FalseClass +# :stopdoc: +class FalseClass include Net::BER::Extensions::FalseClass end +# :startdoc: diff --git a/lib/net/ber/core_ext/array.rb b/lib/net/ber/core_ext/array.rb index 4696a5a..fef386b 100644 --- a/lib/net/ber/core_ext/array.rb +++ b/lib/net/ber/core_ext/array.rb @@ -1,3 +1,5 @@ +## +# BER extensions to the Array class. module Net::BER::Extensions::Array ## # Converts an Array to a BER sequence. All values in the Array are diff --git a/lib/net/ber/core_ext/bignum.rb b/lib/net/ber/core_ext/bignum.rb index b1d9a6f..c2a0f03 100644 --- a/lib/net/ber/core_ext/bignum.rb +++ b/lib/net/ber/core_ext/bignum.rb @@ -1,3 +1,5 @@ +## +# BER extensions to the Bignum class. module Net::BER::Extensions::Bignum ## # Converts a Bignum to an uncompressed BER integer. diff --git a/lib/net/ber/core_ext/false_class.rb b/lib/net/ber/core_ext/false_class.rb index bdbbca9..2de15dc 100644 --- a/lib/net/ber/core_ext/false_class.rb +++ b/lib/net/ber/core_ext/false_class.rb @@ -1,3 +1,5 @@ +## +# BER extensions to +false+. module Net::BER::Extensions::FalseClass ## # Converts +false+ to the BER wireline representation of +false+. diff --git a/lib/net/ber/core_ext/fixnum.rb b/lib/net/ber/core_ext/fixnum.rb index 5d16354..7409ed1 100644 --- a/lib/net/ber/core_ext/fixnum.rb +++ b/lib/net/ber/core_ext/fixnum.rb @@ -1,3 +1,5 @@ +## +# Ber extensions to the Fixnum class. module Net::BER::Extensions::Fixnum ## # Converts the fixnum to BER format. diff --git a/lib/net/ber/core_ext/string.rb b/lib/net/ber/core_ext/string.rb index c0c42c5..1835d9f 100644 --- a/lib/net/ber/core_ext/string.rb +++ b/lib/net/ber/core_ext/string.rb @@ -1,5 +1,7 @@ require 'stringio' +## +# BER extensions to the String class. module Net::BER::Extensions::String ## # Converts a string to a BER string. Universal octet-strings are tagged diff --git a/lib/net/ber/core_ext/true_class.rb b/lib/net/ber/core_ext/true_class.rb index 16ef9da..53975b1 100644 --- a/lib/net/ber/core_ext/true_class.rb +++ b/lib/net/ber/core_ext/true_class.rb @@ -1,3 +1,5 @@ +## +# BER extensions to +true+. module Net::BER::Extensions::TrueClass ## # Converts +true+ to the BER wireline representation of +true+. diff --git a/lib/net/ldap.rb b/lib/net/ldap.rb index 758fee5..ca7c8ce 100644 --- a/lib/net/ldap.rb +++ b/lib/net/ldap.rb @@ -1,12 +1,16 @@ require 'ostruct' -module Net +module Net # :nodoc: class LDAP begin require 'openssl' + ## + # Set to +true+ if OpenSSL is available and LDAPS is supported. HasOpenSSL = true rescue LoadError + # :stopdoc: HasOpenSSL = false + # :startdoc: end end end @@ -19,16 +23,6 @@ require 'net/ldap/dataset' require 'net/ldap/password' require 'net/ldap/entry' -# == Net::LDAP -# -# This library provides a pure-Ruby implementation of the LDAP client -# protocol, per RFC-2251. It can be used to access any server which -# implements the LDAP protocol. -# -# Net::LDAP is intended to provide full LDAP functionality while hiding the -# more arcane aspects the LDAP protocol itself, and thus presenting as -# Ruby-like a programming interface as possible. -# # == Quick-start for the Impatient # === Quick Example of a user-authentication against an LDAP directory: # @@ -246,7 +240,7 @@ require 'net/ldap/entry' # and then keeps it open while it executes a user-supplied block. # Net::LDAP#open closes the connection on completion of the block. class Net::LDAP - VERSION = "0.1.1" + VERSION = "0.2" class LdapError < StandardError; end diff --git a/lib/net/ldap/dataset.rb b/lib/net/ldap/dataset.rb index 342c2e4..8adcf30 100644 --- a/lib/net/ldap/dataset.rb +++ b/lib/net/ldap/dataset.rb @@ -1,25 +1,3 @@ -#---------------------------------------------------------------------------- -# -# Copyright (C) 2006 by Francis Cianfrocca. All Rights Reserved. -# -# Gmail: garbagecat10 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -# -#--------------------------------------------------------------------------- - ## # An LDAP Dataset. Used primarily as an intermediate format for converting # to and from LDIF strings and Net::LDAP::Entry objects. @@ -28,78 +6,7 @@ class Net::LDAP::Dataset < Hash # Dataset object comments. attr_reader :comments - class << self - class ChompedIO #:nodoc: - def initialize(io) - @io = io - end - def gets - s = @io.gets - s.chomp if s - end - end - - ## - # Reads an object that returns data line-wise (using #gets) and parses - # LDIF data into a Dataset object. - def read_ldif(io) #:yields: entry-type, value Used mostly for debugging. - ds = Net::LDAP::Dataset.new - io = ChompedIO.new(io) - - line = io.gets - dn = nil - - while line - new_line = io.gets - - if new_line =~ /^[\s]+/ - line << " " << $' - else - nextline = new_line - - if line =~ /^#/ - ds.comments << line - yield :comment, line if block_given? - elsif line =~ /^dn:[\s]*/i - dn = $' - ds[dn] = Hash.new { |k,v| k[v] = [] } - yield :dn, dn if block_given? - elsif line.empty? - dn = nil - yield :end, nil if block_given? - elsif line =~ /^([^:]+):([\:]?)[\s]*/ - # $1 is the attribute name - # $2 is a colon iff the attr-value is base-64 encoded - # $' is the attr-value - # Avoid the Base64 class because not all Ruby versions have it. - attrvalue = ($2 == ":") ? $'.unpack('m').shift : $' - ds[dn][$1.downcase.to_sym] << attrvalue - yield :attr, [$1.downcase.to_sym, attrvalue] if block_given? - end - - line = nextline - end - end - - ds - end - - ## - # Creates a Dataset object from an Entry object. Used mostly to assist - # with the conversion of - def from_entry(entry) - dataset = Net::LDAP::Dataset.new - hash = { } - entry.each_attribute do |attribute, value| - next if attribute == :dn - hash[attribute] = value - end - dataset[entry.dn] = hash - dataset - end - end - - def initialize(*args, &block) #:nodoc: + def initialize(*args, &block) # :nodoc: super @comments = [] end @@ -152,6 +59,7 @@ class Net::LDAP::Dataset < Hash ary end + ## # This is an internal convenience method to determine if a value requires # base64-encoding before conversion to LDIF output. The standard approach # in most LDAP tools is to check whether the value is a password, or if @@ -162,13 +70,84 @@ class Net::LDAP::Dataset < Hash # why we handle the simplest cases first. Ideally, we would also test the # first/last byte, but it's a bit harder to do this in a way that's # compatible with both 1.8.6 and 1.8.7. - def value_is_binary?(value) + def value_is_binary?(value) # :nodoc: value = value.to_s return true if value[0] == ?: or value[0] == ?< value.each_byte { |byte| return true if (byte < 32) || (byte > 126) } false end private :value_is_binary? + + class << self + class ChompedIO # :nodoc: + def initialize(io) + @io = io + end + def gets + s = @io.gets + s.chomp if s + end + end + + ## + # Creates a Dataset object from an Entry object. Used mostly to assist + # with the conversion of + def from_entry(entry) + dataset = Net::LDAP::Dataset.new + hash = { } + entry.each_attribute do |attribute, value| + next if attribute == :dn + hash[attribute] = value + end + dataset[entry.dn] = hash + dataset + end + + ## + # Reads an object that returns data line-wise (using #gets) and parses + # LDIF data into a Dataset object. + def read_ldif(io) + ds = Net::LDAP::Dataset.new + io = ChompedIO.new(io) + + line = io.gets + dn = nil + + while line + new_line = io.gets + + if new_line =~ /^[\s]+/ + line << " " << $' + else + nextline = new_line + + if line =~ /^#/ + ds.comments << line + yield :comment, line if block_given? + elsif line =~ /^dn:[\s]*/i + dn = $' + ds[dn] = Hash.new { |k,v| k[v] = [] } + yield :dn, dn if block_given? + elsif line.empty? + dn = nil + yield :end, nil if block_given? + elsif line =~ /^([^:]+):([\:]?)[\s]*/ + # $1 is the attribute name + # $2 is a colon iff the attr-value is base-64 encoded + # $' is the attr-value + # Avoid the Base64 class because not all Ruby versions have it. + attrvalue = ($2 == ":") ? $'.unpack('m').shift : $' + ds[dn][$1.downcase.to_sym] << attrvalue + yield :attr, [$1.downcase.to_sym, attrvalue] if block_given? + end + + line = nextline + end + end + + ds + end + end end require 'net/ldap/entry' unless defined? Net::LDAP::Entry diff --git a/lib/net/ldap/entry.rb b/lib/net/ldap/entry.rb index 539ba0f..003d022 100644 --- a/lib/net/ldap/entry.rb +++ b/lib/net/ldap/entry.rb @@ -1,27 +1,3 @@ -# LDAP Entry (search-result) support classes -# -#---------------------------------------------------------------------------- -# -# Copyright (C) 2006 by Francis Cianfrocca. All Rights Reserved. -# -# Gmail: garbagecat10 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -# -#--------------------------------------------------------------------------- - ## # Objects of this class represent individual entries in an LDAP directory. # User code generally does not instantiate this class. Net::LDAP#search diff --git a/lib/net/ldap/filter.rb b/lib/net/ldap/filter.rb index 7ae7611..d4776d3 100644 --- a/lib/net/ldap/filter.rb +++ b/lib/net/ldap/filter.rb @@ -1,25 +1,4 @@ -# Encoding: UTF-8 -# Copyright (C) 2006 by Francis Cianfrocca and other contributors. All -# Rights Reserved. -# -# Gmail: garbagecat10 -# -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the Free -# Software Foundation; either version 2 of the License, or (at your option) -# any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to: -# Free Software Foundation, Inc. -# 51 Franklin St, Fifth Floor -# Boston, MA 02110-1301 -# USA +# -*- ruby encoding: utf-8 -*- ## # Class Net::LDAP::Filter is used to constrain LDAP searches. An object of diff --git a/lib/net/ldap/password.rb b/lib/net/ldap/password.rb index c21c52d..8d8ba05 100644 --- a/lib/net/ldap/password.rb +++ b/lib/net/ldap/password.rb @@ -1,25 +1,3 @@ -#---------------------------------------------------------------------------- -# -# Copyright (C) 2006 by Francis Cianfrocca. All Rights Reserved. -# -# Gmail: garbagecat10 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -# -#--------------------------------------------------------------------------- - require 'digest/sha1' require 'digest/md5' diff --git a/lib/net/ldap/pdu.rb b/lib/net/ldap/pdu.rb index e5c1352..1db4411 100644 --- a/lib/net/ldap/pdu.rb +++ b/lib/net/ldap/pdu.rb @@ -1,27 +1,3 @@ -# LDAP PDU support classes -# -#---------------------------------------------------------------------------- -# -# Copyright (C) 2006 by Francis Cianfrocca. All Rights Reserved. -# -# Gmail: garbagecat10 -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -# -#--------------------------------------------------------------------------- - require 'ostruct' ## @@ -261,7 +237,8 @@ end module Net ## - # Handle the renamed constants. + # Handle renamed constants Net::LdapPdu (Net::LDAP::PDU) and + # Net::LdapPduError (Net::LDAP::PDU::Error). def self.const_missing(name) #:nodoc: case name.to_s when "LdapPdu" @@ -276,4 +253,3 @@ module Net end end end # module Net - diff --git a/lib/net/ldif.rb b/lib/net/ldif.rb deleted file mode 100644 index f73105c..0000000 --- a/lib/net/ldif.rb +++ /dev/null @@ -1,6 +0,0 @@ -module Net - class LDIF - end -end - - diff --git a/lib/net/snmp.rb b/lib/net/snmp.rb index 55326ae..afa9a7d 100644 --- a/lib/net/snmp.rb +++ b/lib/net/snmp.rb @@ -1,7 +1,7 @@ +# :stopdoc: module Net - class SNMP - VERSION = '0.1.0' + VERSION = '0.2' AsnSyntax = Net::BER.compile_syntax({ :application => { @@ -264,4 +264,4 @@ module Net end end - +# :startdoc: diff --git a/test/test_ldif.rb b/test/test_ldif.rb index c04e1e9..77f8b86 100644 --- a/test/test_ldif.rb +++ b/test/test_ldif.rb @@ -2,7 +2,6 @@ require 'common' -require 'net/ldif' require 'digest/sha1' require 'base64'