--- iser-libiscsi-canq2-ep-null/iser_socket.h   2006-04-06 15:09:28.000000000 
+0300
+++ iser-libiscsi-canq2-ep/iser_socket.h        2006-04-06 15:09:41.000000000 
+0300
@@ -1,49 +0,0 @@
-/*
- * Copyright (c) 2004, 2005 Voltaire, Inc. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses.  You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- *     Redistribution and use in source and binary forms, with or
- *     without modification, are permitted provided that the following
- *     conditions are met:
- *
- *     - Redistributions of source code must retain the above
- *       copyright notice, this list of conditions and the following
- *       disclaimer.
- *
- *     - Redistributions in binary form must reproduce the above
- *       copyright notice, this list of conditions and the following
- *       disclaimer in the documentation and/or other materials
- *       provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- * $Id: iser_socket.h 5502 2006-02-27 09:09:38Z ogerlitz $
- */
-
-#ifndef __ISER_SOCKETS_H__
-#define __ISER_SOCKETS_H__
-
-#include <linux/net.h>
-
-struct iser_conn;
-
-#define AF_ISER         28 /* to be defined properly */
-
-int iser_register_sockets(void);
-void iser_unreg_sockets(void);
-
-struct iser_conn *iser_conn_from_sock(struct socket *sock);
-struct socket *iser_conn_to_sock(struct iser_conn *iser_conn);
-#endif                         /* __ISER_SOCKETS_H__ */
--- iser-libiscsi-canq2-ep-null/iser_socket.c   2006-04-06 15:09:24.000000000 
+0300
+++ iser-libiscsi-canq2-ep/iser_socket.c        2006-04-06 15:09:38.000000000 
+0300
@@ -1,215 +0,0 @@
-/*
- * Copyright (c) 2005, 2006 Voltaire, Inc. All rights reserved.
- *
- * This software is available to you under a choice of one of two
- * licenses.  You may choose to be licensed under the terms of the GNU
- * General Public License (GPL) Version 2, available from the file
- * COPYING in the main directory of this source tree, or the
- * OpenIB.org BSD license below:
- *
- *     Redistribution and use in source and binary forms, with or
- *     without modification, are permitted provided that the following
- *     conditions are met:
- *
- *     - Redistributions of source code must retain the above
- *       copyright notice, this list of conditions and the following
- *       disclaimer.
- *
- *     - Redistributions in binary form must reproduce the above
- *       copyright notice, this list of conditions and the following
- *       disclaimer in the documentation and/or other materials
- *       provided with the distribution.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
- * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
- * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
- * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
- * SOFTWARE.
- *
- * $Id: iser_socket.c 5505 2006-02-27 12:48:53Z ogerlitz $
- */
-
-#include <linux/module.h>
-#include <linux/kernel.h>
-#include <linux/tcp.h>
-
-#include "iscsi_iser.h"
-#include "iser_socket.h"
-
-#define PF_ISER         AF_ISER
-
-static int iser_sock_create(struct socket *, int);
-static int iser_sock_release(struct socket *);
-static int iser_sock_connect(struct socket *, struct sockaddr *, int, int);
-static int iser_sock_shutdown(struct socket *,int);
-static int iser_sock_getsockopt(struct socket *,int,int,char __user *,int 
__user *);
-static unsigned int iser_sock_poll(struct file *,struct socket *,
-                                  struct poll_table_struct *);
-
-struct iser_sock {
-       struct sock             sock;
-       struct iser_conn        iser_conn;
-};
-
-static struct net_proto_family iser_proto_family = {
-       .family         = PF_ISER,
-       .create         = iser_sock_create,
-       .authentication = 0,
-       .encryption     = 0,
-       .encrypt_net    = 0
-};
-
-static struct proto_ops iser_proto_ops = {
-       .family         = AF_ISER,
-       .owner          = THIS_MODULE,
-
-       .connect        = iser_sock_connect,
-       .release        = iser_sock_release,
-       .shutdown       = iser_sock_shutdown,
-
-       .bind           = sock_no_bind,
-       .poll           = iser_sock_poll,
-       .socketpair     = sock_no_socketpair,
-       .accept         = sock_no_accept,
-       .getname        = sock_no_getname,
-       .ioctl          = sock_no_ioctl,
-       .listen         = sock_no_listen,
-       .setsockopt     = sock_setsockopt,
-       .getsockopt     = iser_sock_getsockopt,
-       .sendmsg        = sock_no_sendmsg,
-       .recvmsg        = sock_no_recvmsg,
-       .mmap           = sock_no_mmap,
-       .sendpage       = sock_no_sendpage
-};
-
-static struct proto iser_sock_proto = {
-       .name           = "ib_iser",
-       .owner          = THIS_MODULE,
-       .obj_size       = sizeof(struct iser_sock)
-};
-
-struct iser_conn *iser_conn_from_sock(struct socket *sock)
-{
-       struct iser_sock *iser_sk = (struct iser_sock *)sock->sk;
-
-       return &iser_sk->iser_conn;
-}
-
-struct socket *iser_conn_to_sock(struct iser_conn *iser_conn)
-{
-       struct iser_sock *iser_sk;
-       iser_sk = container_of(iser_conn, struct iser_sock, iser_conn);
-
-       return iser_sk->sock.sk_socket;
-}
-
-int iser_register_sockets(void)
-{
-       int error;
-
-       error = proto_register(&iser_sock_proto, 1);
-       if (error < 0) {
-               iser_err("proto_register failed (%d)\n", error);
-               return error;
-       }
-
-       error = sock_register(&iser_proto_family);
-       if (error < 0) {
-               iser_err("sock_register failed (%d)\n", error);
-               proto_unregister(&iser_sock_proto);
-       }
-
-       return 0;
-}
-
-void iser_unreg_sockets(void)
-{
-       sock_unregister(PF_ISER);
-       proto_unregister(&iser_sock_proto);
-}
-
-static int iser_sock_create(struct socket *sock, int protocol)
-{
-       struct iser_sock *iser_sk = NULL;
-
-       if (sock->type != SOCK_STREAM)
-               return -ESOCKTNOSUPPORT;
-
-       iser_sk = (struct iser_sock *)sk_alloc(PF_INET, GFP_KERNEL,
-                                              &iser_sock_proto, 1);
-       if (iser_sk == NULL)
-               return -ENOBUFS;
-
-       sock_init_data(sock, &iser_sk->sock);
-       iser_sk->sock.sk_destruct = NULL;
-       iser_sk->sock.sk_family = PF_ISER;
-       iser_sk->sock.sk_sndbuf = 64*1024;
-
-       if (iser_conn_init(&iser_sk->iser_conn) != 0)
-               return -ENOMEM;
-
-       sock->ops = &iser_proto_ops;
-       sock->state = SS_UNCONNECTED;
-       sock_graft(&iser_sk->sock, sock);
-
-       return 0;
-}
-
-int iser_sock_connect(struct socket *sock, struct sockaddr *uservaddr,
-                     int sockaddr_len, int flags)
-{
-       struct sockaddr_in *dst_addr = (struct sockaddr_in *)uservaddr;
-       struct iser_sock *iser_sk = (struct iser_sock *)sock->sk;
-       struct iser_conn *iser_conn = &iser_sk->iser_conn;
-       int err = 0;
-
-       iser_err("dst_addr ip %.8x (%d.%d.%d.%d) port %.4x=%d\n",
-                dst_addr->sin_addr.s_addr, NIPQUAD(dst_addr->sin_addr),
-                dst_addr->sin_port, dst_addr->sin_port);
-
-       err = iser_connect(iser_conn, NULL, dst_addr);
-       if (err)
-               iser_err("conn_establish failed: %d\n", err);
-       return err;
-}
-
-static inline void iser_sock_free(struct socket *sock)
-{
-       struct sock *sk = sock->sk;
-       sock->sk = NULL;
-       sock_orphan(sk);
-       sk_free(sk);
-}
-
-int iser_sock_release(struct socket *sock)
-{
-       struct iser_sock *iser_sock = (struct iser_sock *)sock->sk;
-       struct iser_conn *iser_conn = &iser_sock->iser_conn;
-       int iser_err = 0;
-
-       if (atomic_read(&iser_conn->state) == ISER_CONN_DOWN)
-               iser_sock_free(sock);
-       else
-               iser_err = -EPERM;
-       return iser_err;
-}
-
-int iser_sock_shutdown(struct socket *sock, int how)
-{
-       return 0;
-}
-
-static int iser_sock_getsockopt(struct socket *sock, int level, int optname,
-                               char __user *optval, int __user *optlen)
-{
-       return 0;
-}
-
-static unsigned int iser_sock_poll(struct file *file, struct socket *sock,
-                                  struct poll_table_struct *wait)
-{
-       return POLLOUT;
-}

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to