public class SmbNamedPipe extends SmbFile
There are three Win32 function calls provided by the Windows SDK that are important in the context of using jCIFS. They are:
CallNamedPipe
A message-type pipe call that opens,
writes to, reads from, and closes the pipe in a single operation.
TransactNamedPipe
A message-type pipe call that
writes to and reads from an existing pipe descriptor in one operation.
CreateFile
, ReadFile
,
WriteFile
, and CloseFile
A byte-type pipe can
be opened, written to, read from and closed using the standard Win32
file operations.
The jCIFS API maps all of these operations into the standard Java
XxxputStream
interface. A special PIPE_TYPE
flags is necessary to distinguish which type of Named Pipe behavior
is desired.
SmbNamedPipe Constructor Examples |
|
Code Sample | Description |
new SmbNamedPipe( "smb://server/IPC$/PIPE/foo", SmbNamedPipe.PIPE_TYPE_RDWR | SmbNamedPipe.PIPE_TYPE_CALL ); |
Open the Named Pipe foo for reading and writing. The pipe will behave like the CallNamedPipe interface.
|
new SmbNamedPipe( "smb://server/IPC$/foo", SmbNamedPipe.PIPE_TYPE_RDWR | SmbNamedPipe.PIPE_TYPE_TRANSACT ); |
Open the Named Pipe foo for reading and writing. The pipe will behave like the TransactNamedPipe interface.
|
new SmbNamedPipe( "smb://server/IPC$/foo", SmbNamedPipe.PIPE_TYPE_RDWR ); |
Open the Named Pipe foo for reading and writing. The pipe will
behave as though the CreateFile , ReadFile ,
WriteFile , and CloseFile interface was
being used.
|
See Using jCIFS to Connect to Win32 Named Pipes for a detailed description of how to use jCIFS with Win32 Named Pipe server processes.
Modifier and Type | Field and Description |
---|---|
static int |
CAP_DFS |
static int |
CAP_EXTENDED_SECURITY |
static int |
CAP_LARGE_FILES |
static int |
CAP_LEVEL_II_OPLOCKS |
static int |
CAP_LOCK_AND_READ |
static int |
CAP_MPX_MODE |
static int |
CAP_NONE |
static int |
CAP_NT_FIND |
static int |
CAP_NT_SMBS |
static int |
CAP_RAW_MODE |
static int |
CAP_RPC_REMOTE_APIS |
static int |
CAP_STATUS32 |
static int |
CAP_UNICODE |
static int |
CAPABILITIES |
static int |
CMD_OFFSET |
static int |
CONN_TIMEOUT |
static java.util.LinkedList |
CONNECTIONS |
static int |
DEFAULT_CAPABILITIES |
static int |
DEFAULT_CONN_TIMEOUT |
static int |
DEFAULT_FLAGS2 |
static int |
DEFAULT_MAX_MPX_COUNT |
static int |
DEFAULT_PORT |
static int |
DEFAULT_RCV_BUF_SIZE |
static int |
DEFAULT_RESPONSE_TIMEOUT |
static int |
DEFAULT_SND_BUF_SIZE |
static int |
DEFAULT_SO_TIMEOUT |
static int |
DEFAULT_SSN_LIMIT |
static int |
DELETE |
static int |
ERROR_CODE_OFFSET |
static int |
FILE_APPEND_DATA |
static int |
FILE_DELETE |
static int |
FILE_EXECUTE |
static int |
FILE_READ_ATTRIBUTES |
static int |
FILE_READ_DATA |
static int |
FILE_READ_EA |
static int |
FILE_WRITE_ATTRIBUTES |
static int |
FILE_WRITE_DATA |
static int |
FILE_WRITE_EA |
static int |
FLAGS_COPY_SOURCE_MODE_ASCII |
static int |
FLAGS_COPY_TARGET_MODE_ASCII |
static int |
FLAGS_LOCK_AND_READ_WRITE_AND_UNLOCK |
static int |
FLAGS_NONE |
static int |
FLAGS_NOTIFY_OF_MODIFY_ACTION |
static int |
FLAGS_OFFSET |
static int |
FLAGS_OPLOCK_REQUESTED_OR_GRANTED |
static int |
FLAGS_PATH_NAMES_CANONICALIZED |
static int |
FLAGS_PATH_NAMES_CASELESS |
static int |
FLAGS_RECEIVE_BUFFER_POSTED |
static int |
FLAGS_RESPONSE |
static int |
FLAGS_TARGET_MUST_BE_DIRECTORY |
static int |
FLAGS_TARGET_MUST_BE_FILE |
static int |
FLAGS_TREE_COPY |
static int |
FLAGS_VERIFY_ALL_WRITES |
static int |
FLAGS2 |
static int |
FLAGS2_EXTENDED_ATTRIBUTES |
static int |
FLAGS2_EXTENDED_SECURITY_NEGOTIATION |
static int |
FLAGS2_LONG_FILENAMES |
static int |
FLAGS2_NONE |
static int |
FLAGS2_PERMIT_READ_IF_EXECUTE_PERM |
static int |
FLAGS2_RESOLVE_PATHS_IN_DFS |
static int |
FLAGS2_SECURITY_SIGNATURES |
static int |
FLAGS2_STATUS32 |
static int |
FLAGS2_UNICODE |
static boolean |
FORCE_UNICODE |
static int |
GENERIC_ALL |
static int |
GENERIC_EXECUTE |
static int |
GENERIC_READ |
static int |
GENERIC_WRITE |
static int |
HEADER_LENGTH |
static java.net.InetAddress |
LADDR |
static int |
LM_COMPATIBILITY |
static int |
LPORT |
static int |
MAX_MPX_COUNT |
static long |
MILLISECONDS_BETWEEN_1970_AND_1601 |
static java.lang.String |
NATIVE_LANMAN |
static java.lang.String |
NATIVE_OS |
static java.lang.String |
NETBIOS_HOSTNAME |
static jcifs.smb.SmbTransport |
NULL_TRANSPORT |
static java.lang.String |
OEM_ENCODING |
static int |
OPEN_FUNCTION_FAIL_IF_EXISTS |
static int |
OPEN_FUNCTION_OVERWRITE_IF_EXISTS |
static int |
PID |
static int |
PIPE_TYPE_CALL
Pipe operations should behave like the
CallNamedPipe Win32 Named Pipe function. |
static int |
PIPE_TYPE_DCE_TRANSACT |
static int |
PIPE_TYPE_RDONLY
The pipe should be opened read-only.
|
static int |
PIPE_TYPE_RDWR
The pipe should be opened for both reading and writing.
|
static int |
PIPE_TYPE_TRANSACT
Pipe operations should behave like the
TransactNamedPipe Win32 Named Pipe function. |
static int |
PIPE_TYPE_WRONLY
The pipe should be opened only for writing.
|
static int |
RCV_BUF_SIZE |
static int |
READ_CONTROL |
static int |
RESPONSE_TIMEOUT |
static int |
SECURITY_SHARE |
static int |
SECURITY_USER |
static int |
SIGNATURE_OFFSET |
static boolean |
SIGNPREF |
static int |
SND_BUF_SIZE |
static int |
SO_TIMEOUT |
static int |
SSN_LIMIT |
static int |
SYNCHRONIZE |
static boolean |
TCP_NODELAY |
static int |
TID_OFFSET |
static java.util.TimeZone |
TZ |
static java.lang.String |
UNI_ENCODING |
static boolean |
USE_BATCHING |
static boolean |
USE_EXTSEC |
static boolean |
USE_NTSMBS |
static boolean |
USE_NTSTATUS |
static boolean |
USE_UNICODE |
static int |
VC_NUMBER |
static int |
WRITE_DAC |
static int |
WRITE_OWNER |
ATTR_ARCHIVE, ATTR_DIRECTORY, ATTR_HIDDEN, ATTR_READONLY, ATTR_SYSTEM, ATTR_VOLUME, dfs, FILE_NO_SHARE, FILE_SHARE_DELETE, FILE_SHARE_READ, FILE_SHARE_WRITE, TYPE_COMM, TYPE_FILESYSTEM, TYPE_NAMED_PIPE, TYPE_PRINTER, TYPE_SERVER, TYPE_SHARE, TYPE_WORKGROUP
Constructor and Description |
---|
SmbNamedPipe(java.lang.String url,
int pipeType)
Open the Named Pipe resource specified by the url
parameter.
|
SmbNamedPipe(java.lang.String url,
int pipeType,
NtlmPasswordAuthentication auth) |
SmbNamedPipe(java.net.URL url,
int pipeType,
NtlmPasswordAuthentication auth) |
Modifier and Type | Method and Description |
---|---|
java.io.InputStream |
getNamedPipeInputStream()
Return the
InputStream used to read information
from this pipe instance. |
java.io.OutputStream |
getNamedPipeOutputStream()
Return the
OutputStream used to write
information to this pipe instance. |
canRead, canWrite, connect, copyTo, createNewFile, createTime, delete, equals, exists, getAttributes, getCanonicalPath, getContentLength, getDate, getDfsPath, getDiskFreeSpace, getInputStream, getLastModified, getName, getOutputStream, getParent, getPath, getPrincipal, getSecurity, getSecurity, getServer, getShare, getShareSecurity, getType, getUncPath, hashCode, isDirectory, isFile, isHidden, lastModified, length, list, list, listFiles, listFiles, listFiles, listFiles, mkdir, mkdirs, pathNamesPossiblyEqual, renameTo, setAttributes, setCreateTime, setLastModified, setReadOnly, setReadWrite, toString, toURL
addRequestProperty, getAllowUserInteraction, getConnectTimeout, getContent, getContent, getContentEncoding, getContentLengthLong, getContentType, getDefaultAllowUserInteraction, getDefaultRequestProperty, getDefaultUseCaches, getDoInput, getDoOutput, getExpiration, getFileNameMap, getHeaderField, getHeaderField, getHeaderFieldDate, getHeaderFieldInt, getHeaderFieldKey, getHeaderFieldLong, getHeaderFields, getIfModifiedSince, getPermission, getReadTimeout, getRequestProperties, getRequestProperty, getURL, getUseCaches, guessContentTypeFromName, guessContentTypeFromStream, setAllowUserInteraction, setConnectTimeout, setContentHandlerFactory, setDefaultAllowUserInteraction, setDefaultRequestProperty, setDefaultUseCaches, setDoInput, setDoOutput, setFileNameMap, setIfModifiedSince, setReadTimeout, setRequestProperty, setUseCaches
public static final int PIPE_TYPE_RDONLY
public static final int PIPE_TYPE_WRONLY
public static final int PIPE_TYPE_RDWR
public static final int PIPE_TYPE_CALL
CallNamedPipe
Win32 Named Pipe function.public static final int PIPE_TYPE_TRANSACT
TransactNamedPipe
Win32 Named Pipe function.public static final int PIPE_TYPE_DCE_TRANSACT
public static final int DEFAULT_PORT
public static final int DEFAULT_MAX_MPX_COUNT
public static final int DEFAULT_RESPONSE_TIMEOUT
public static final int DEFAULT_SO_TIMEOUT
public static final int DEFAULT_RCV_BUF_SIZE
public static final int DEFAULT_SND_BUF_SIZE
public static final int DEFAULT_SSN_LIMIT
public static final int DEFAULT_CONN_TIMEOUT
public static final java.net.InetAddress LADDR
public static final int LPORT
public static final int MAX_MPX_COUNT
public static final int SND_BUF_SIZE
public static final int RCV_BUF_SIZE
public static final boolean USE_UNICODE
public static final boolean FORCE_UNICODE
public static final boolean USE_NTSTATUS
public static final boolean SIGNPREF
public static final boolean USE_NTSMBS
public static final boolean USE_EXTSEC
public static final java.lang.String NETBIOS_HOSTNAME
public static final int LM_COMPATIBILITY
public static final int FLAGS_NONE
public static final int FLAGS_LOCK_AND_READ_WRITE_AND_UNLOCK
public static final int FLAGS_RECEIVE_BUFFER_POSTED
public static final int FLAGS_PATH_NAMES_CASELESS
public static final int FLAGS_PATH_NAMES_CANONICALIZED
public static final int FLAGS_OPLOCK_REQUESTED_OR_GRANTED
public static final int FLAGS_NOTIFY_OF_MODIFY_ACTION
public static final int FLAGS_RESPONSE
public static final int FLAGS2_NONE
public static final int FLAGS2_LONG_FILENAMES
public static final int FLAGS2_EXTENDED_ATTRIBUTES
public static final int FLAGS2_SECURITY_SIGNATURES
public static final int FLAGS2_EXTENDED_SECURITY_NEGOTIATION
public static final int FLAGS2_RESOLVE_PATHS_IN_DFS
public static final int FLAGS2_PERMIT_READ_IF_EXECUTE_PERM
public static final int FLAGS2_STATUS32
public static final int FLAGS2_UNICODE
public static final int CAP_NONE
public static final int CAP_RAW_MODE
public static final int CAP_MPX_MODE
public static final int CAP_UNICODE
public static final int CAP_LARGE_FILES
public static final int CAP_NT_SMBS
public static final int CAP_RPC_REMOTE_APIS
public static final int CAP_STATUS32
public static final int CAP_LEVEL_II_OPLOCKS
public static final int CAP_LOCK_AND_READ
public static final int CAP_NT_FIND
public static final int CAP_DFS
public static final int CAP_EXTENDED_SECURITY
public static final int FILE_READ_DATA
public static final int FILE_WRITE_DATA
public static final int FILE_APPEND_DATA
public static final int FILE_READ_EA
public static final int FILE_WRITE_EA
public static final int FILE_EXECUTE
public static final int FILE_DELETE
public static final int FILE_READ_ATTRIBUTES
public static final int FILE_WRITE_ATTRIBUTES
public static final int DELETE
public static final int READ_CONTROL
public static final int WRITE_DAC
public static final int WRITE_OWNER
public static final int SYNCHRONIZE
public static final int GENERIC_ALL
public static final int GENERIC_EXECUTE
public static final int GENERIC_WRITE
public static final int GENERIC_READ
public static final int FLAGS_TARGET_MUST_BE_FILE
public static final int FLAGS_TARGET_MUST_BE_DIRECTORY
public static final int FLAGS_COPY_TARGET_MODE_ASCII
public static final int FLAGS_COPY_SOURCE_MODE_ASCII
public static final int FLAGS_VERIFY_ALL_WRITES
public static final int FLAGS_TREE_COPY
public static final int OPEN_FUNCTION_FAIL_IF_EXISTS
public static final int OPEN_FUNCTION_OVERWRITE_IF_EXISTS
public static final int PID
public static final int SECURITY_SHARE
public static final int SECURITY_USER
public static final int CMD_OFFSET
public static final int ERROR_CODE_OFFSET
public static final int FLAGS_OFFSET
public static final int SIGNATURE_OFFSET
public static final int TID_OFFSET
public static final int HEADER_LENGTH
public static final long MILLISECONDS_BETWEEN_1970_AND_1601
public static final java.util.TimeZone TZ
public static final boolean USE_BATCHING
public static final java.lang.String OEM_ENCODING
public static final java.lang.String UNI_ENCODING
public static final int DEFAULT_FLAGS2
public static final int DEFAULT_CAPABILITIES
public static final int FLAGS2
public static final int CAPABILITIES
public static final boolean TCP_NODELAY
public static final int RESPONSE_TIMEOUT
public static final java.util.LinkedList CONNECTIONS
public static final int SSN_LIMIT
public static final int SO_TIMEOUT
public static final int CONN_TIMEOUT
public static final java.lang.String NATIVE_OS
public static final java.lang.String NATIVE_LANMAN
public static final int VC_NUMBER
public static final jcifs.smb.SmbTransport NULL_TRANSPORT
public SmbNamedPipe(java.lang.String url, int pipeType) throws java.net.MalformedURLException, java.net.UnknownHostException
PIPE_TYPE
flags combined with the bitwise OR
operator |
. See the examples listed above.java.net.MalformedURLException
java.net.UnknownHostException
public SmbNamedPipe(java.lang.String url, int pipeType, NtlmPasswordAuthentication auth) throws java.net.MalformedURLException, java.net.UnknownHostException
java.net.MalformedURLException
java.net.UnknownHostException
public SmbNamedPipe(java.net.URL url, int pipeType, NtlmPasswordAuthentication auth) throws java.net.MalformedURLException, java.net.UnknownHostException
java.net.MalformedURLException
java.net.UnknownHostException
public java.io.InputStream getNamedPipeInputStream() throws java.io.IOException
InputStream
used to read information
from this pipe instance. Presumably data would first be written
to the OutputStream
associated with this Named
Pipe instance although this is not a requirement (e.g. a
read-only named pipe would write data to this stream on
connection). Reading from this stream may block. Therefore it
may be necessary that an addition thread be used to read and
write to a Named Pipe.java.io.IOException
public java.io.OutputStream getNamedPipeOutputStream() throws java.io.IOException
OutputStream
used to write
information to this pipe instance. The act of writing data
to this stream will result in response data recieved in the
InputStream
associated with this Named Pipe
instance (unless of course it does not elicite a response or the pipe is write-only).java.io.IOException