summaryrefslogtreecommitdiff
path: root/src/network.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/network.cc')
-rw-r--r--src/network.cc151
1 files changed, 0 insertions, 151 deletions
diff --git a/src/network.cc b/src/network.cc
deleted file mode 100644
index 799bc98..0000000
--- a/src/network.cc
+++ /dev/null
@@ -1,151 +0,0 @@
-/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
-/***************************************************************************
- * network.cc
- *
- * Wed Nov 3 21:23:14 CET 2004
- * Copyright 2004 Bent Bisballe
- * deva@aasimon.org
- ****************************************************************************/
-
-/*
- * This file is part of MIaV.
- *
- * MIaV is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * MIaV is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with MIaV; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- */
-#include <config.h>
-#include "network.h"
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <sys/socket.h>
-
-Network::Network(Socket *gs, Info *ginfo)
-{
- info = ginfo;
- s = gs;
-}
-
-Network::~Network()
-{
-}
-
-int Network::write(void *buf, int size)
-{
- if(!s->isConnected()) {
- // info->error("Write attempted to a socket not connected!");
- return -1;
- }
- int n = send(s->ssocket, buf, size, MSG_WAITALL);
-
- if(n == -1) {
- info->error("An error occurred!");
- }
-
- return n;
-}
-
-int Network::read(void *buf, int size)
-{
- if(!s->isConnected()) {
- // info->error("Read attempted from a socket not connected!");
- return -1;
- }
- int n = recv(s->ssocket, buf, size, MSG_WAITALL);
-
- if(n == -1) {
- info->error("An error occurred!");
- }
-
- return n;
-}
-
-/*
-struct msghdr {
- void *msg_name // Optional address.
- socklen_t msg_namelen // Size of address.
- struct iovec *msg_iov // Scatter/gather array.
- int msg_iovlen // Members in msg_iov.
- void *msg_control // Ancillary data; see below.
- socklen_t msg_controllen // Ancillary data buffer len.
- int msg_flags // Flags on received message.
-};
-*/
-
-int Network::sendPackage(n_header *h, void* buf, int bufsz)
-{
- struct msghdr msg;
- struct iovec iovecs[2];
-
- if(!s->isConnected()) {
- // info->error("Write attempted to a socket not connected!");
- return -1;
- }
-
- memset(&msg, 0, sizeof(msg));
-
- msg.msg_iov = iovecs;
- msg.msg_iovlen = 2;
-
- msg.msg_iov[0].iov_base = h;
- msg.msg_iov[0].iov_len = sizeof(*h);
-
- msg.msg_iov[1].iov_base = buf;
- msg.msg_iov[1].iov_len = bufsz;
-
- int n = sendmsg(s->ssocket, &msg, 0);
- if(n < 0) {
- info->error("A network error ocurred during sendPackage!");
- return -1;
- }
-
- return n;
-}
-
-int Network::recvPackage(n_header *h, void* buf, int bufsz)
-{
- struct msghdr msg;
- struct iovec iovecs[2];
-
- if(!s->isConnected()) {
- // info->error("Read attempted to a socket not connected!");
- return -1;
- }
-
- memset(&msg, 0, sizeof(msg));
-
- iovecs[0].iov_base = h;
- iovecs[0].iov_len = sizeof(*h);
-
- iovecs[1].iov_base = buf;
- iovecs[1].iov_len = bufsz;
-
- msg.msg_iov = iovecs;
- msg.msg_iovlen = 2;
-
- int n = recvmsg(s->ssocket, &msg, MSG_WAITALL);
-
- if(n < 0) {
- info->error("A network error ocurred during recvPackage!");
- return -1;
- }
-
- if(msg.msg_iovlen != 2) {
- info->error("Wrong package format!");
- return -1;
- }
- return n;
-}
-