Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Apr 2013 10:37:26 +0900
From:      Hirohisa Yamaguchi <umq@ueo.co.jp>
To:        FreeBSD-gnats-submit@freebsd.org
Cc:        Denis Generalov <gd@rambler-co.ru>
Subject:   ports/177774: [patch] net/nbd-server update to 3.3
Message-ID:  <868v4p3l0p.wl%umq@ueo.co.jp>
Resent-Message-ID: <201304110140.r3B1e04j082321@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         177774
>Category:       ports
>Synopsis:       [patch] net/nbd-server update to 3.3
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Apr 11 01:40:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Hirohisa Yamaguchi
>Release:        FreeBSD 8.3-RELEASE-p3 amd64
>Organization:
<organization of PR author (multiple lines)>
>Environment:
System: FreeBSD **** 8.3-RELEASE-p3 FreeBSD 8.3-RELEASE-p3 #0: Tue Jun 12 00:39:29 UTC 2012 root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64

>Description:
	The new version of net/nbd-server 3.3 is now available
	 http://sourceforge.net/projects/nbd/files/nbd/3.3/

	This is a revised patch from which I've sent as a follow-up to ports/177626.

>How-To-Repeat:
	N/A
>Fix:

	The patch follows:

M       net/nbd-server/Makefile
M       net/nbd-server/distinfo
D       net/nbd-server/files/nbd.h
A       net/nbd-server/files/patch-cliserv.h
M       net/nbd-server/files/patch-nbd-server.c

Index: net/nbd-server/Makefile
===================================================================
--- net/nbd-server/Makefile	(revision 315781)
+++ net/nbd-server/Makefile	(working copy)
@@ -1,13 +1,12 @@
 # Created by: Christian Laursen <xi@borderworlds.dk>
 # $FreeBSD$
 
-PORTNAME=	nbd-server
-PORTVERSION=	2.8.5
-PORTREVISION=	1
+PORTNAME=	nbd
+PORTVERSION=	3.3
 PORTEPOCH=	1
 CATEGORIES=	net
-MASTER_SITES=	SF/nbd/nbd/${PORTVERSION}
-DISTNAME=	nbd-${PORTVERSION}
+MASTER_SITES=	SF
+PKGNAMESUFFIX=	-server
 
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Server for the Linux network block device (nbd)
@@ -16,12 +15,14 @@
 USE_GNOME=	glib20
 USE_PKGCONFIG=	build
 GNU_CONFIGURE=	yes
-CONFIGURE_ARGS=	--prefix=${PREFIX} --enable-lfs --enable-syslog
+CONFIGURE_ARGS=	--enable-lfs --enable-syslog
 
-PLIST_FILES=	bin/nbd-server
-MAN1=		nbd-server.1
+PLIST_FILES=	bin/nbd-server bin/nbd-trdump
+MAN1=		nbd-server.1 nbd-trdump.1
+MAN5=		nbd-server.5
+MAN8=		nbd-client.8
 
-post-extract:
-	@${CP} ${FILESDIR}/nbd.h ${WRKSRC}
+regression-test: build
+		cd ${WRKSRC} && ${MAKE} check
 
 .include <bsd.port.mk>
Index: net/nbd-server/distinfo
===================================================================
--- net/nbd-server/distinfo	(revision 315781)
+++ net/nbd-server/distinfo	(working copy)
@@ -1,2 +1,2 @@
-SHA256 (nbd-2.8.5.tar.bz2) = dc77166f086712fa0d1ff63997d487d99eaac238819b1aebff9a8fddfcc0b835
-SIZE (nbd-2.8.5.tar.bz2) = 151053
+SHA256 (nbd-3.3.tar.bz2) = 83105718dcab9eee7ea152d6e5f4928095f0d3e21dcf92e43eef183e29a80c19
+SIZE (nbd-3.3.tar.bz2) = 515909
Index: net/nbd-server/files/nbd.h
===================================================================
--- net/nbd-server/files/nbd.h	(revision 315781)
+++ net/nbd-server/files/nbd.h	(working copy)
@@ -1,91 +0,0 @@
-/*
- * 1999 Copyright (C) Pavel Machek, pavel@ucw.cz. This code is GPL.
- * 1999/11/04 Copyright (C) 1999 VMware, Inc. (Regis "HPReg" Duchesne)
- *            Made nbd_end_request() use the io_request_lock
- * 2001 Copyright (C) Steven Whitehouse
- *            New nbd_end_request() for compatibility with new linux block
- *            layer code.
- * 2003/06/24 Louis D. Langholtz <ldl@aros.net>
- *            Removed unneeded blksize_bits field from nbd_device struct.
- *            Cleanup PARANOIA usage & code.
- * 2004/02/19 Paul Clements
- *            Removed PARANOIA, plus various cleanup and comments
- */
-
-#ifndef LINUX_NBD_H
-#define LINUX_NBD_H
-
-#define NBD_SET_SOCK	_IO( 0xab, 0 )
-#define NBD_SET_BLKSIZE	_IO( 0xab, 1 )
-#define NBD_SET_SIZE	_IO( 0xab, 2 )
-#define NBD_DO_IT	_IO( 0xab, 3 )
-#define NBD_CLEAR_SOCK	_IO( 0xab, 4 )
-#define NBD_CLEAR_QUE	_IO( 0xab, 5 )
-#define NBD_PRINT_DEBUG	_IO( 0xab, 6 )
-#define NBD_SET_SIZE_BLOCKS	_IO( 0xab, 7 )
-#define NBD_DISCONNECT  _IO( 0xab, 8 )
-
-enum {
-	NBD_CMD_READ = 0,
-	NBD_CMD_WRITE = 1,
-	NBD_CMD_DISC = 2
-};
-
-#define nbd_cmd(req) ((req)->cmd[0])
-#define MAX_NBD 128
-
-/* userspace doesn't need the nbd_device structure */
-#ifdef __KERNEL__
-
-/* values for flags field */
-#define NBD_READ_ONLY 0x0001
-#define NBD_WRITE_NOCHK 0x0002
-
-struct nbd_device {
-	int flags;
-	int harderror;		/* Code of hard error			*/
-	struct socket * sock;
-	struct file * file; 	/* If == NULL, device is not ready, yet	*/
-	int magic;
-	spinlock_t queue_lock;
-	struct list_head queue_head;/* Requests are added here...	*/
-	struct semaphore tx_lock;
-	struct gendisk *disk;
-	int blksize;
-	u64 bytesize;
-};
-
-#endif
-
-/* These are sent over the network in the request/reply magic fields */
-
-#define NBD_REQUEST_MAGIC 0x25609513
-#define NBD_REPLY_MAGIC 0x67446698
-/* Do *not* use magics: 0x12560953 0x96744668. */
-
-/*
- * This is the packet used for communication between client and
- * server. All data are in network byte order.
- */
-struct nbd_request {
-	u32 magic;
-	u32 type;	/* == READ || == WRITE 	*/
-	char handle[8];
-	u64 from;
-	u32 len;
-}
-#ifdef __GNUC__
-	__attribute__ ((packed))
-#endif
-;
-
-/*
- * This is the reply packet that nbd-server sends back to the client after
- * it has completed an I/O request (or an error occurs).
- */
-struct nbd_reply {
-	u32 magic;
-	u32 error;		/* 0 = ok, else error	*/
-	char handle[8];		/* handle you got from request	*/
-};
-#endif
Index: net/nbd-server/files/patch-cliserv.h
===================================================================
--- net/nbd-server/files/patch-cliserv.h	(revision 0)
+++ net/nbd-server/files/patch-cliserv.h	(working copy)
@@ -0,0 +1,11 @@
+--- ./cliserv.h.orig	2012-05-25 17:09:16.000000000 +0900
++++ ./cliserv.h	2013-04-04 19:36:34.000000000 +0900
+@@ -15,6 +15,8 @@
+ #include <netinet/tcp.h>
+ #include <netinet/in.h>
+ #include <stdlib.h>
++#include <sys/types.h>
++#include <sys/socket.h>
+ 
+ #if SIZEOF_UNSIGNED_SHORT_INT==4
+ typedef unsigned short u32;
Index: net/nbd-server/files/patch-nbd-server.c
===================================================================
--- net/nbd-server/files/patch-nbd-server.c	(revision 315781)
+++ net/nbd-server/files/patch-nbd-server.c	(working copy)
@@ -1,18 +1,10 @@
-diff -urN nbd-2.8.3.orig/nbd-server.c nbd-2.8.3/nbd-server.c
---- nbd-2.8.3.orig/nbd-server.c	Thu Dec 22 21:37:20 2005
-+++ nbd-server.c	Sun Jan  8 16:45:30 2006
-@@ -363,12 +363,12 @@
-  * is severely wrong)
-  **/
- void sigchld_handler(int s) {
--        int* status=NULL;
-+        int status;
- 	int* i;
- 	pid_t pid;
- 	int done=0;
- 
--	while(!done && (pid=wait(status)) > 0) {
-+	while(!done && (pid=wait(&status)) > 0) {
- 		if(WIFEXITED(status)) {
- 			msg3(LOG_INFO, "Child exited with %d", WEXITSTATUS(status));
- 			msg3(LOG_INFO, "pid is %d", pid);
+--- ./nbd-server.c.orig	2012-07-04 05:54:53.000000000 +0900
++++ ./nbd-server.c	2013-04-04 19:36:34.000000000 +0900
+@@ -72,6 +72,7 @@
+ #ifdef HAVE_SYS_MOUNT_H
+ #include <sys/mount.h>
+ #endif
++#include <sys/uio.h>
+ #include <signal.h>
+ #include <errno.h>
+ #include <netinet/tcp.h>

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?868v4p3l0p.wl%umq>