1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-07-01 03:22:48 -05:00

Rename FROMFIELD to 'container_of'.

Ian Jackson points out that the Linux kernel has a macro of this name
with the same purpose, and suggests that it's a good idea to use the
same name as they do, so that at least some people reading one code
base might recognise it from the other.

I never really thought very hard about what order FROMFIELD's
parameters should go in, and therefore I'm pleasantly surprised to
find that my order agrees with the kernel's, so I don't have to
permute every call site as part of making this change :-)
This commit is contained in:
Simon Tatham
2018-10-05 23:49:08 +01:00
parent ed652a70e8
commit 9396fcc9f7
47 changed files with 410 additions and 399 deletions

View File

@ -106,7 +106,7 @@ static void handle_sentdata(struct handle *h, int new_backlog)
static Plug *sk_handle_plug(Socket *s, Plug *p)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
Plug *ret = hs->plug;
if (p)
hs->plug = p;
@ -115,7 +115,7 @@ static Plug *sk_handle_plug(Socket *s, Plug *p)
static void sk_handle_close(Socket *s)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
if (hs->defer_close) {
hs->deferred_close = TRUE;
@ -135,7 +135,7 @@ static void sk_handle_close(Socket *s)
static int sk_handle_write(Socket *s, const void *data, int len)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
return handle_write(hs->send_h, data, len);
}
@ -151,14 +151,14 @@ static int sk_handle_write_oob(Socket *s, const void *data, int len)
static void sk_handle_write_eof(Socket *s)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
handle_write_eof(hs->send_h);
}
static void sk_handle_flush(Socket *s)
{
/* HandleSocket *hs = FROMFIELD(s, HandleSocket, sock); */
/* HandleSocket *hs = container_of(s, HandleSocket, sock); */
/* do nothing */
}
@ -211,7 +211,7 @@ static void handle_socket_unfreeze(void *hsv)
static void sk_handle_set_frozen(Socket *s, int is_frozen)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
if (is_frozen) {
switch (hs->frozen) {
@ -266,13 +266,13 @@ static void sk_handle_set_frozen(Socket *s, int is_frozen)
static const char *sk_handle_socket_error(Socket *s)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
return hs->error;
}
static char *sk_handle_peer_info(Socket *s)
{
HandleSocket *hs = FROMFIELD(s, HandleSocket, sock);
HandleSocket *hs = container_of(s, HandleSocket, sock);
ULONG pid;
static HMODULE kernel32_module;
DECL_WINDOWS_FUNCTION(static, BOOL, GetNamedPipeClientProcessId,

View File

@ -909,7 +909,7 @@ SockAddr *sk_addr_dup(SockAddr *addr)
static Plug *sk_net_plug(Socket *sock, Plug *p)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
Plug *ret = s->plug;
if (p)
s->plug = p;
@ -1411,7 +1411,7 @@ Socket *sk_newlistener(const char *srcaddr, int port, Plug *plug,
local_host_only, ADDRTYPE_IPV6);
if (other) {
NetSocket *ns = FROMFIELD(other, NetSocket, sock);
NetSocket *ns = container_of(other, NetSocket, sock);
if (!ns->error) {
ns->parent = ret;
ret->child = ns;
@ -1428,7 +1428,7 @@ Socket *sk_newlistener(const char *srcaddr, int port, Plug *plug,
static void sk_net_close(Socket *sock)
{
extern char *do_select(SOCKET skt, int startup);
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
if (s->child)
sk_net_close(&s->child->sock);
@ -1539,7 +1539,7 @@ void try_send(NetSocket *s)
static int sk_net_write(Socket *sock, const void *buf, int len)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
assert(s->outgoingeof == EOF_NO);
@ -1559,7 +1559,7 @@ static int sk_net_write(Socket *sock, const void *buf, int len)
static int sk_net_write_oob(Socket *sock, const void *buf, int len)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
assert(s->outgoingeof == EOF_NO);
@ -1582,7 +1582,7 @@ static int sk_net_write_oob(Socket *sock, const void *buf, int len)
static void sk_net_write_eof(Socket *sock)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
assert(s->outgoingeof == EOF_NO);
@ -1785,13 +1785,13 @@ const char *sk_addr_error(SockAddr *addr)
}
static const char *sk_net_socket_error(Socket *sock)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
return s->error;
}
static char *sk_net_peer_info(Socket *sock)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
#ifdef NO_IPV6
struct sockaddr_in addr;
#else
@ -1823,7 +1823,7 @@ static char *sk_net_peer_info(Socket *sock)
static void sk_net_set_frozen(Socket *sock, int is_frozen)
{
NetSocket *s = FROMFIELD(sock, NetSocket, sock);
NetSocket *s = container_of(sock, NetSocket, sock);
if (s->frozen == is_frozen)
return;
s->frozen = is_frozen;

View File

@ -38,7 +38,7 @@ typedef struct NamedPipeServerSocket {
static Plug *sk_namedpipeserver_plug(Socket *s, Plug *p)
{
NamedPipeServerSocket *ps = FROMFIELD(s, NamedPipeServerSocket, sock);
NamedPipeServerSocket *ps = container_of(s, NamedPipeServerSocket, sock);
Plug *ret = ps->plug;
if (p)
ps->plug = p;
@ -47,7 +47,7 @@ static Plug *sk_namedpipeserver_plug(Socket *s, Plug *p)
static void sk_namedpipeserver_close(Socket *s)
{
NamedPipeServerSocket *ps = FROMFIELD(s, NamedPipeServerSocket, sock);
NamedPipeServerSocket *ps = container_of(s, NamedPipeServerSocket, sock);
if (ps->callback_handle)
handle_free(ps->callback_handle);
@ -64,7 +64,7 @@ static void sk_namedpipeserver_close(Socket *s)
static const char *sk_namedpipeserver_socket_error(Socket *s)
{
NamedPipeServerSocket *ps = FROMFIELD(s, NamedPipeServerSocket, sock);
NamedPipeServerSocket *ps = container_of(s, NamedPipeServerSocket, sock);
return ps->error;
}

View File

@ -284,7 +284,7 @@ static const char *serial_init(Frontend *frontend, Backend **backend_handle,
static void serial_free(Backend *be)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
serial_terminate(serial);
expire_timer_context(serial);
@ -293,7 +293,7 @@ static void serial_free(Backend *be)
static void serial_reconfig(Backend *be, Conf *conf)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
serial_configure(serial, serial->port, conf);
@ -308,7 +308,7 @@ static void serial_reconfig(Backend *be, Conf *conf)
*/
static int serial_send(Backend *be, const char *buf, int len)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
if (serial->out == NULL)
return 0;
@ -322,7 +322,7 @@ static int serial_send(Backend *be, const char *buf, int len)
*/
static int serial_sendbuffer(Backend *be)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
return serial->bufsize;
}
@ -351,7 +351,7 @@ static void serbreak_timer(void *ctx, unsigned long now)
*/
static void serial_special(Backend *be, SessionSpecialCode code, int arg)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
if (serial->port && code == SS_BRK) {
logevent(serial->frontend, "Starting serial break at user request");
@ -399,7 +399,7 @@ static int serial_sendok(Backend *be)
static void serial_unthrottle(Backend *be, int backlog)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
if (serial->in)
handle_unthrottle(serial->in, backlog);
}
@ -424,7 +424,7 @@ static void serial_provide_logctx(Backend *be, LogContext *logctx)
static int serial_exitcode(Backend *be)
{
Serial *serial = FROMFIELD(be, Serial, backend);
Serial *serial = container_of(be, Serial, backend);
if (serial->port != INVALID_HANDLE_VALUE)
return -1; /* still connected */
else