Re: kern/150481: IFA_RTSELF: freebsd 8.1 - ifdown - ifup - loopback route keeps

2010-09-11 Thread remko
Old Synopsis: freebsd 8.1 - ifdown - ifup - loopback route keeps
New Synopsis: IFA_RTSELF: freebsd 8.1 - ifdown - ifup - loopback route keeps

Responsible-Changed-From-To: freebsd-bugs->freebsd-net
Responsible-Changed-By: remko
Responsible-Changed-When: Sat Sep 11 09:22:40 UTC 2010
Responsible-Changed-Why: 
reassign to networking team

http://www.freebsd.org/cgi/query-pr.cgi?pr=150481
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"


Re: Removal of deprecated implied connect for TCP

2010-09-11 Thread Randall Stewart

All:

One thing to note.. when you can do an implied connection setup, the
3-way hand shake has the potential to carry data (don't know if tcp  
does in FreeBSD)

on the third leg of the 3-way handshake.

This is one of the reasons SCTP uses this.. since we often will
carry data an the third and even possibly the 4th leg of the handshake  
(we

have one extra leg).

Taking this feature out of TCP will make it so we will be like all other
o/s's and the socket semantic will prevent you from doing data on the  
third leg..


SYN>


instead of

SYN-->
<---SYN-ACk--
---ACK+DATA-->


In the past I have mentioned in classes I teach that TCP is capable of  
this but the O/S's

of the world do not allow this later behavior..

Just thoughts and ramblings ;-)

R


On Sep 10, 2010, at 2:51 PM, Karim Fodil-Lemelin wrote:


On 31/08/2010 5:32 PM, Robert Watson wrote:


On Tue, 31 Aug 2010, Andre Oppermann wrote:

I'm not entirely comfortable with this change, and would like a  
chance to cogitate on it a bit more. While I'm not aware of any  
applications depending on the semantic for TCP, I know that we do  
use it for UNIX domain sockets.


I don't have any plans to remove the implied connect support from  
the socket layer or other protocols, only from TCP.


Right -- the implicit question is: why should TCP be the only  
stream protocol in our stack *not* to support implied connection,  
when we plan to continue to support it for all other protocols?


For deprecating this part of the TCP API there is no documentation  
to the implied connect in tcp(4).  In sendto(2) it doesn't  
differentiate between protocols and simply says: "... sendto() and  
sendmsg() may be used at any time."  For MSG_EOF it says that is  
only supported for SOCK_STREAM sockets in the PF_INET protocol  
family. These sentences have to be corrected.


In general, deprecating is taken to mean providing significant and  
explicit advance warning of removal -- for example, updating the  
8.x man page to point out that the feature is deprecated and it  
will not appear in future releases of FreeBSD.


Robert

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net- 
unsubscr...@freebsd.org"

Hi,

For what its worth, we at Xiphos (now XipLink), are still using  
sendto and T/TCP and is one of the reasons we've chosen FreeBSD more  
then 10 years ago!


Best regards,

Karim.
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"



--
Randall Stewart
803-317-4952 (cell)

___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"


Re: kern/143874: [wpi] Wireless 3945ABG error. wpi0 could not allocate memory resource

2010-09-11 Thread oliver . solaris
The following reply was made to PR kern/143874; it has been noted by GNATS.

From: oliver.sola...@gmail.com>
To: bug-follo...@freebsd.org, kavol...@gmail.com
Cc:  
Subject: Re: kern/143874: [wpi] Wireless 3945ABG error. wpi0 could not
 allocate memory resource
Date: Sat, 11 Sep 2010 21:55:53 -0500

 I have the same issue with a Toshiba Satellite P105:
 
 Sep 11 21:46:13  kernel: wpi0:  irq 17
 at device 0.0 on pci3
 Sep 11 21:46:13  kernel: wpi0: Driver Revision 20071127
 Sep 11 21:46:13  kernel: wpi0: 0x1000 bytes of rid 0x10 res 3 failed
 (0, 0xf fff).
 Sep 11 21:46:13  kernel: wpi0: could not allocate memory resource
 Sep 11 21:46:13  kernel: device_attach: wpi0 attach returned 6
 
 Please let me know if I can help out to track this issue down.
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"


Creating socket(9) functions in FreeBSD 8 kernel

2010-09-11 Thread Sadish Kulasekere
Hi,

I've  been trying to write a program to send a message to a specific host
with a specific MAC address. I used the socket(9) kernel interface socket
functions, but the kernel keeps crashing when I try to load it. I have
posted the code below. Can someone please tell me what is wrong with this
code?

Cheers,
Sadish.

#include 
//#include 
//#include 
#include 
//#include 
#include 
#include 
#include 
#include 
#include 
//#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
//#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

#include 

static int wake(void);
//typedef u8;

static int wake(void)
{
  unsigned int i,j;
  unsigned char k[6] = {0x1F,0x00,0xDD,0x1D,0x3B,0x2E}; /*need to fix
the correct MAC*/
  unsigned char wolBuff[136];
  unsigned char* ptr;
  //int optval = 1;
  int packet;
  //int sendint;
  struct socket *sok;
  struct sockaddr_in sap;
  //struct sockaddr *sap;
  //struct ucred *crd;
  //struct thread *trd;
  struct uio auio;
  struct iovec aiov;
  struct sockopt sokoptions;

  aiov.iov_base = (caddr_t) &wolBuff;//&wolBuff;
  aiov.iov_len = sizeof(wolBuff);//strlen(wolBuff);

  auio.uio_iov = &aiov;
  auio.uio_iovcnt = 1;
  auio.uio_offset = 0;
  auio.uio_resid = sizeof(wolBuff);//strlen(wolBuff);
  auio.uio_segflg = UIO_SYSSPACE;
  auio.uio_rw = UIO_WRITE;
  auio.uio_td = 0;

  //sokoptions.sopt_dir = SOPT_SET;
  //sokoptions.sopt_level = SOL_SOCKET;
  //sokoptions.sopt_name = packet;
  //sokoptions.sopt_val = 0;
  //sokoptions.sopt_valsize = 0;
  //sokoptions.sopt_td = NULL;


  ptr = wolBuff;
  for(i=0; i<6; i++)
  {
*ptr++ = 0xFF;
  }
  for(j=0; j<16; j++)
  {
for(i=0; i<6; i++)
{
  *ptr++ = k[i];
}
  }

  //uprintf("print buffer %u",*ptr);

  //packet = socket (AF_INET, SOCK_DGRAM, IPPROTO_UDP);
  packet = socreate(AF_LINK, &sok, SOCK_DGRAM,0, 0, 0);

 if(sok==NULL)
  {
   uprintf("sok null\n");
   goto ret;
  }

  sokoptions.sopt_dir = SOPT_SET;
  sokoptions.sopt_level = SOL_SOCKET;
  sokoptions.sopt_name = packet;
  sokoptions.sopt_val = 0;
  sokoptions.sopt_valsize = 0;
  sokoptions.sopt_td = NULL;

  //sosetopt((struct socket *)packet, &sokoptions);

  /* Set up broadcast address */
sap.sin_family = AF_INET;
sap.sin_addr.s_addr = INADDR_BROADCAST;//htonl(0x)

sap.sin_port = htons(6000);

  uprintf("a \n"); //just for testing

  packet = sosend(sok, (struct sockaddr *)&sap, &auio, 0, 0, 0, 0);
  if(packet <0)
  {
uprintf("b \n");
goto ret;
  }

  //soclose(sok);

  ret:
  return 0;

}

static int deinit(void)
{

uprintf("module unloaded \n");
return 0;

}

/* The function to load/unload kernel module*/
static int event_handler(struct module *module, int event, void *arg)
{
  int error =0; /* Error, 0 for normal return status*/

  switch (event)
  {
  case MOD_LOAD:
error = wake();
break;
  case MOD_UNLOAD:
error = deinit();
break;
  default:
error = EOPNOTSUPP; /*Error operation not supported*/
break;

  }

return(error);

}

/*argument for DECLARE_MODULE macro*/
static moduledata_t test_conf ={
  "WOLgenerator",  /*module name */
  event_handler, /* event handler function*/
  "NULL"/* extra data*/

};

/*int
dev_open(struct cdev *dev, int oflags, int devtype, struct thread *td)
{
int err = 0;

if (count > 0)
return EBUSY;
count = 1;
return (err);
}

int
dev_close(struct cdev *dev, int fflag, int devtype, struct thread *td)
{
int err = 0;
count = 0;
return (err);
}

int
dev_read(struct cdev *dev, struct uio *uio, int ioflag)
{
int rv = 0;

sprintf(flwbuf, "%016d, %9u \n", bytes,sport);
rv = uiomove(flwbuf, MIN(uio->uio_resid, strlen(flwbuf)), uio);
return rv;
}*/

DECLARE_MODULE(WOLgenerator,test_conf,SI_SUB_KLD,SI_ORDER_ANY); /* the name
of module, the moduledata_t structure,???,order of loading*/
___
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"