001 /*
002 * Licensed to the Apache Software Foundation (ASF) under one
003 * or more contributor license agreements. See the NOTICE file
004 * distributed with this work for additional information
005 * regarding copyright ownership. The ASF licenses this file
006 * to you under the Apache License, Version 2.0 (the
007 * "License"); you may not use this file except in compliance
008 * with the License. You may obtain a copy of the License at
009 *
010 * http://www.apache.org/licenses/LICENSE-2.0
011 *
012 * Unless required by applicable law or agreed to in writing,
013 * software distributed under the License is distributed on an
014 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015 * KIND, either express or implied. See the License for the
016 * specific language governing permissions and limitations
017 * under the License.
018 *
019 */
020
021 package org.apache.directory.server.dhcp.options.misc;
022
023
024 import org.apache.directory.server.dhcp.options.DhcpOption;
025
026
027 /**
028 * This option is used by clients and servers to exchange vendor-
029 * specific information. The information is an opaque object of n
030 * octets, presumably interpreted by vendor-specific code on the clients
031 * and servers. The definition of this information is vendor specific.
032 * The vendor is indicated in the vendor class identifier option.
033 * Servers not equipped to interpret the vendor-specific information
034 * sent by a client MUST ignore it (although it may be reported).
035 * Clients which do not receive desired vendor-specific information
036 * SHOULD make an attempt to operate without it, although they may do so
037 * (and announce they are doing so) in a degraded mode.
038 *
039 * If a vendor potentially encodes more than one item of information in
040 * this option, then the vendor SHOULD encode the option using
041 * "Encapsulated vendor-specific options" as described below:
042 * The Encapsulated vendor-specific options field SHOULD be encoded as a
043 * sequence of code/length/value fields of identical syntax to the DHCP
044 * options field with the following exceptions:
045 *
046 * 1) There SHOULD NOT be a "magic cookie" field in the encapsulated
047 * vendor-specific extensions field.
048 *
049 * 2) Codes other than 0 or 255 MAY be redefined by the vendor within
050 * the encapsulated vendor-specific extensions field, but SHOULD
051 * conform to the tag-length-value syntax defined in section 2.
052 *
053 * 3) Code 255 (END), if present, signifies the end of the
054 * encapsulated vendor extensions, not the end of the vendor
055 * extensions field. If no code 255 is present, then the end of
056 * the enclosing vendor-specific information field is taken as the
057 * end of the encapsulated vendor-specific extensions field.
058 *
059 * The code for this option is 43 and its minimum length is 1.
060 *
061 * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
062 * @version $Rev: 638228 $, $Date: 2008-03-18 08:12:41 +0200 (Tue, 18 Mar 2008) $
063 */
064 public class VendorSpecificInformation extends DhcpOption
065 {
066 /*
067 * @see org.apache.directory.server.dhcp.options.DhcpOption#getTag()
068 */
069 public byte getTag()
070 {
071 return 43;
072 }
073 }