Bug 1882457 - Update the release process docs for the monorepo migration. r=ahal...
[gecko.git] / security / nss / cpputil / dummy_io.h
blobe10ee1eee35d4fd2f0bfcada7add2e263c863bf2
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
3 * You can obtain one at http://mozilla.org/MPL/2.0/. */
5 #ifndef dummy_io_h__
6 #define dummy_io_h__
8 #include "prerror.h"
9 #include "prio.h"
11 #include "nss_scoped_ptrs.h"
13 class DummyIOLayerMethods {
14 public:
15 static ScopedPRFileDesc CreateFD(PRDescIdentity id,
16 DummyIOLayerMethods *methods);
18 virtual PRStatus Close(PRFileDesc *f);
19 virtual int32_t Read(PRFileDesc *f, void *buf, int32_t length);
20 virtual int32_t Write(PRFileDesc *f, const void *buf, int32_t length);
21 virtual int32_t Available(PRFileDesc *f);
22 virtual int64_t Available64(PRFileDesc *f);
23 virtual PRStatus Sync(PRFileDesc *f);
24 virtual int32_t Seek(PRFileDesc *f, int32_t offset, PRSeekWhence how);
25 virtual int64_t Seek64(PRFileDesc *f, int64_t offset, PRSeekWhence how);
26 virtual PRStatus FileInfo(PRFileDesc *f, PRFileInfo *info);
27 virtual PRStatus FileInfo64(PRFileDesc *f, PRFileInfo64 *info);
28 virtual int32_t Writev(PRFileDesc *f, const PRIOVec *iov, int32_t iov_size,
29 PRIntervalTime to);
30 virtual PRStatus Connect(PRFileDesc *f, const PRNetAddr *addr,
31 PRIntervalTime to);
32 virtual PRFileDesc *Accept(PRFileDesc *sd, PRNetAddr *addr,
33 PRIntervalTime to);
34 virtual PRStatus Bind(PRFileDesc *f, const PRNetAddr *addr);
35 virtual PRStatus Listen(PRFileDesc *f, int32_t depth);
36 virtual PRStatus Shutdown(PRFileDesc *f, int32_t how);
37 virtual int32_t Recv(PRFileDesc *f, void *buf, int32_t buflen, int32_t flags,
38 PRIntervalTime to);
39 virtual int32_t Send(PRFileDesc *f, const void *buf, int32_t amount,
40 int32_t flags, PRIntervalTime to);
41 virtual int32_t Recvfrom(PRFileDesc *f, void *buf, int32_t amount,
42 int32_t flags, PRNetAddr *addr, PRIntervalTime to);
43 virtual int32_t Sendto(PRFileDesc *f, const void *buf, int32_t amount,
44 int32_t flags, const PRNetAddr *addr,
45 PRIntervalTime to);
46 virtual int16_t Poll(PRFileDesc *f, int16_t in_flags, int16_t *out_flags);
47 virtual int32_t AcceptRead(PRFileDesc *sd, PRFileDesc **nd, PRNetAddr **raddr,
48 void *buf, int32_t amount, PRIntervalTime t);
49 virtual int32_t TransmitFile(PRFileDesc *sd, PRFileDesc *f,
50 const void *headers, int32_t hlen,
51 PRTransmitFileFlags flags, PRIntervalTime t);
52 virtual PRStatus Getpeername(PRFileDesc *f, PRNetAddr *addr);
53 virtual PRStatus Getsockname(PRFileDesc *f, PRNetAddr *addr);
54 virtual PRStatus Getsockoption(PRFileDesc *f, PRSocketOptionData *opt);
55 virtual PRStatus Setsockoption(PRFileDesc *f, const PRSocketOptionData *opt);
56 virtual int32_t Sendfile(PRFileDesc *out, PRSendFileData *in,
57 PRTransmitFileFlags flags, PRIntervalTime to);
58 virtual PRStatus ConnectContinue(PRFileDesc *f, int16_t flags);
59 virtual int32_t Reserved(PRFileDesc *f);
62 #endif // dummy_io_h__