summaryrefslogtreecommitdiffstats
path: root/net/socket/socket_net_log_params.h
blob: b432667d4a687dd1f9b3327d61e3c0581e01a6a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef NET_SOCKET_SOCKET_NET_LOG_PARAMS_H_
#define NET_SOCKET_SOCKET_NET_LOG_PARAMS_H_

#include "net/base/sys_addrinfo.h"
#include "net/log/net_log.h"

namespace net {

class HostPortPair;
class IPEndPoint;

// Creates a NetLog callback for socket error events.
NetLog::ParametersCallback CreateNetLogSocketErrorCallback(int net_error,
                                                           int os_error);

// Creates a NetLog callback for a HostPortPair.
// |host_and_port| must remain valid for the lifetime of the returned callback.
NetLog::ParametersCallback CreateNetLogHostPortPairCallback(
    const HostPortPair* host_and_port);

// Creates a NetLog callback for an IPEndPoint.
// |address| must remain valid for the lifetime of the returned callback.
NetLog::ParametersCallback CreateNetLogIPEndPointCallback(
    const IPEndPoint* address);

// Creates a NetLog callback for the source sockaddr on connect events.
// |net_address| must remain valid for the lifetime of the returned callback.
NetLog::ParametersCallback CreateNetLogSourceAddressCallback(
    const struct sockaddr* net_address,
    socklen_t address_len);

}  // namespace net

#endif  // NET_SOCKET_SOCKET_NET_LOG_PARAMS_H_