OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [libjava/] [classpath/] [doc/] [www.gnu.org/] [inetlib.wml] - Blame information for rev 14

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 14 jlechner
#include "include/layout.wml"
2
 
3
4
5
 
6
7
Classpath::inetlib
8
9
10
 
11

12
GNU inetlib is a library of clients for common internet protocols.
13
The following protocols are currently supported:
14

15
 
16
17
  • Hypertext Transfer Protocol (HTTP)
  • 18
  • File Transfer Protocol (FTP)
  • 19
  • Simple Mail Transfer Protocol (SMTP)
  • 20
  • Internet Message Access Protocol (IMAP)
  • 21
  • Post Office Protocol (POP)
  • 22
  • Network News Transfer Protocol (NNTP)
  • 23
  • Lightweight Directory Access Protocol (LDAP) (alpha)
  • 24
  • Gopher
  • 25
  • Finger
  • 26
    27
     
    28

    29
    The inetlib library is similar in intent to the Python internet protocols
    30
    library - the API is as close as possible to the intent of the underlying
    31
    protocol design. This allows for very efficient coding of user agents.
    32

    33
     
    34

    35
    Additionally, inetlib includes URLStreamHandler implementations for some
    36
    of the protocols. These can be used to add support for the corresponding
    37
    URL scheme to the java.net.URL class.
    38

    39
     
    40
    41
    42
     
    43
    Classpath::inetlib::HTTP
    44
    45
    46
     
    47

    48
    The inetlib HTTP client supports HTTP/1.1 as described in RFC 2616, with
    49
    the following features:
    50

    51
     
    52
    53
  • Persistent connections
  • 54
  • Basic and Digest authentication (RFC 2617)
  • 55
  • HTTPS
  • 56
  • HTTP proxies
  • 57
  • HTTP/1.0 compatibility
  • 58
  • Support for WebDAV methods and other HTTP extensions
  • 59
  • Automatic decoding of the chunked transfer-coding
  • 60
  • Parsing of HTTP date headers
  • 61
  • Support for the 100-continue expectation
  • 62
    63
     
    64

    65
    The design of the API is similar to the
    66
    67
    WebDAV/HTTP library. A logical connection to the server is instantiated,
    68
    and multiple requests can be issued on this connection. Each request has
    69
    an atomic dispatch method which returns the response.
    70
    All I/O, authentication, etc is handled by registering callback objects
    71
    with the request prior to dispatch, which are notified during the dispatch
    72
    procedure as necessary. Simple byte-array content callbacks are supplied
    73
    which can manage any request/response content that fits in available memory.
    74

    75
     
    76

    77
    An URL stream handler is provided, supporting the full HttpURLConnection
    78
    specification.
    79

    80
     
    81
    82
    83
     
    84
    Classpath::inetlib::FTP
    85
    86
    87
     
    88

    89
    The inetlib FTP client supports both active and passive mode FTP and all
    90
    transfer modes and representation types. The client implements RFC 959,
    91
    with the following exceptions and limitations:
    92

    93
     
    94
    95
  • Only one concurrent transfer connection is supported
  • 96
  • The STAT, HELP, SITE, SMNT, and ACCT commands are not supported
  • 97
  • The TYPE command does not allow alternatives to the default bytesize
  • 98
    (Non-print), and local bytesize is not supported
    99
    100
     
    101

    102
    An URL stream handler is provided, which allows the setting of transfer modes
    103
    and representation types by means of the setRequestProperty
    104
    method.
    105

    106
     
    107
    108
    109
     
    110
    Classpath::inetlib::SMTP
    111
    112
    113
     
    114

    115
    The inetlib SMTP client fully implements RFC 2821 including the ESMTP
    116
    extension standard.
    117

    118
     
    119

    120
    The client also implements TLS negotiation (RFC 3207) and SASL
    121
    authentication (RFC 2554).
    122

    123
     
    124
    125
    126
     
    127
    Classpath::inetlib::IMAP
    128
    129
    130
     
    131

    132
    The inetlib IMAP client fully implements IMAP4rev1 and includes the
    133
    following features:
    134

    135
     
    136
    137
  • Extensible authentication using any available SASL mechanism
  • 138
  • TLS negotiation (RFC 2595)
  • 139
  • Automatic UTF-7imap folder name decoding/encoding
  • 140
  • IMAP over SSL
  • 141
    142
     
    143
    144
    145
     
    146
    Classpath::inetlib::POP3
    147
    148
    149
     
    150

    151
    The inetlib POP client implements version 3 only, as specified in RFC 1939,
    152
    with the exception of the no-arg LIST and UIDL commands (use STAT followed
    153
    by multiple LIST and/or UIDL instead).
    154
    It supports the following features:
    155

    156
     
    157
    158
  • The POP3 extension mechanism CAPA
  • 159
  • Extensible authentication using any available SASL mechanism via
  • 160
    the AUTH mechanism (RFC 1734)
    161
  • TLS negotiation (RFC 2595)
  • 162
    163
     
    164
    165
    166
     
    167
    Classpath::inetlib::NNTP
    168
    169
    170
     
    171

    172
    The inetlib NNTP client implements all of RFC 977, and many of the common
    173
    NNTP extensions specified in RFC 2980. It supports the XOVER and XHDR
    174
    commands, and simple authentication.
    175

    176
     
    177

    178
    There is also a newsrc mechanism for storing newsgroup subscriptions and read
    179
    articles in an implementation-independent manner, including a file-based
    180
    implementation.
    181

    182
     
    183
    184
    185
    186
     

    powered by: WebSVN 2.1.0

    © copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.