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 021package org.apache.directory.server.dns.io.encoder; 022 023 024/** 025 * 3.4.2. WKS RDATA format 026 * 027 * +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ 028 * | ADDRESS | 029 * +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ 030 * | PROTOCOL | | 031 * +--+--+--+--+--+--+--+--+ | 032 * | | 033 * / <BIT MAP> / 034 * / / 035 * +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ 036 * 037 * where: 038 * 039 * ADDRESS An 32 bit Internet address 040 * 041 * PROTOCOL An 8 bit IP protocol number 042 * 043 * <BIT MAP> A variable length bit map. The bit map must be a 044 * multiple of 8 bits long. 045 * 046 * The WKS record is used to describe the well known services supported by 047 * a particular protocol on a particular internet address. The PROTOCOL 048 * field specifies an IP protocol number, and the bit map has one bit per 049 * port of the specified protocol. The first bit corresponds to port 0, 050 * the second to port 1, etc. If the bit map does not include a bit for a 051 * protocol of interest, that bit is assumed zero. The appropriate values 052 * and mnemonics for ports and protocols are specified in [RFC-1010]. 053 * 054 * For example, if PROTOCOL=TCP (6), the 26th bit corresponds to TCP port 055 * 25 (SMTP). If this bit is set, a SMTP server should be listening on TCP 056 * port 25; if zero, SMTP service is not supported on the specified 057 * address. 058 * 059 * The purpose of WKS RRs is to provide availability information for 060 * servers for TCP and UDP. If a server supports both TCP and UDP, or has 061 * multiple Internet addresses, then multiple WKS RRs are used. 062 * 063 * WKS RRs cause no additional section processing. 064 * 065 * In master files, both ports and protocols are expressed using mnemonics 066 * or decimal numbers. 067 * 068 * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a> 069 */ 070public class WellKnownServicesRecordEncoder 071{ 072}