]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - net/ipv4/tcp.c
inet, inet6: make tcp_sendmsg() and tcp_sendpage() through inet_sendmsg() and inet_se...
[net-next-2.6.git] / net / ipv4 / tcp.c
index b8601b7683a614692863ba5673e043d13273be3c..9fce8a8a13aabd35f420d073be735a7ab5f2c520 100644 (file)
@@ -857,15 +857,15 @@ out_err:
        return sk_stream_error(sk, flags, err);
 }
 
-ssize_t tcp_sendpage(struct socket *sock, struct page *page, int offset,
-                    size_t size, int flags)
+int tcp_sendpage(struct sock *sk, struct page *page, int offset,
+                size_t size, int flags)
 {
        ssize_t res;
-       struct sock *sk = sock->sk;
 
        if (!(sk->sk_route_caps & NETIF_F_SG) ||
            !(sk->sk_route_caps & NETIF_F_ALL_CSUM))
-               return sock_no_sendpage(sock, page, offset, size, flags);
+               return sock_no_sendpage(sk->sk_socket, page, offset, size,
+                                       flags);
 
        lock_sock(sk);
        TCP_CHECK_TIMER(sk);
@@ -899,10 +899,9 @@ static inline int select_size(struct sock *sk, int sg)
        return tmp;
 }
 
-int tcp_sendmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *msg,
+int tcp_sendmsg(struct kiocb *iocb, struct sock *sk, struct msghdr *msg,
                size_t size)
 {
-       struct sock *sk = sock->sk;
        struct iovec *iov;
        struct tcp_sock *tp = tcp_sk(sk);
        struct sk_buff *skb;