X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/8ad349bb6ed4a0be06e34c92be0d98b92e078db4..4452a7af2eac33dbad800bcc91f2399d62c18f53:/bsd/netat/adsp_Control.c diff --git a/bsd/netat/adsp_Control.c b/bsd/netat/adsp_Control.c index d77735242..3bc19f846 100644 --- a/bsd/netat/adsp_Control.c +++ b/bsd/netat/adsp_Control.c @@ -1,31 +1,29 @@ /* - * Copyright (c) 2006 Apple Computer, Inc. All Rights Reserved. + * Copyright (c) 2000 Apple Computer, Inc. All rights reserved. + * + * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * - * @APPLE_LICENSE_OSREFERENCE_HEADER_START@ + * This file contains Original Code and/or Modifications of Original Code + * as defined in and that are subject to the Apple Public Source License + * Version 2.0 (the 'License'). You may not use this file except in + * compliance with the License. The rights granted to you under the License + * may not be used to create, or enable the creation or redistribution of, + * unlawful or unlicensed copies of an Apple operating system, or to + * circumvent, violate, or enable the circumvention or violation of, any + * terms of an Apple operating system software license agreement. * - * This file contains Original Code and/or Modifications of Original Code - * as defined in and that are subject to the Apple Public Source License - * Version 2.0 (the 'License'). You may not use this file except in - * compliance with the License. The rights granted to you under the - * License may not be used to create, or enable the creation or - * redistribution of, unlawful or unlicensed copies of an Apple operating - * system, or to circumvent, violate, or enable the circumvention or - * violation of, any terms of an Apple operating system software license - * agreement. - * - * Please obtain a copy of the License at - * http://www.opensource.apple.com/apsl/ and read it before using this - * file. - * - * The Original Code and all software distributed under the License are - * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER - * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, - * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. - * Please see the License for the specific language governing rights and + * Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this file. + * + * The Original Code and all software distributed under the License are + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. + * Please see the License for the specific language governing rights and * limitations under the License. - * - * @APPLE_LICENSE_OSREFERENCE_HEADER_END@ + * + * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ */ /* * Copyright (c) 1990, 1995-1998 Apple Computer, Inc. @@ -137,7 +135,6 @@ void CheckSend(sp) /* (CCBPtr sp) */ { int i; int attnMsg; /* True if attention message */ - int s; register gbuf_t *mp; /* send message block */ #ifdef notdef register gbuf_t *tmp; @@ -163,7 +160,6 @@ top: gbuf_freel(mlist); return; /* can't get buffers... do nothing! */ } - ATDISABLE(s, sp->lock); sp->callSend = 0; /* Clear flag */ use_attention_code = 0; len = 0; @@ -184,24 +180,24 @@ top: /* point past ADSP header (no attention) */ dp = ((char *) gbuf_wptr(mp)) + ADSP_FRAME_LEN; - UAL_ASSIGN(sp->f.pktFirstByteSeq, netdw(sp->firstRtmtSeq)); + UAL_ASSIGN_HTON(sp->f.pktFirstByteSeq, sp->firstRtmtSeq); - UAS_ASSIGN(sp->of.version, netw(0x0100)); /* Fill in open connection parms */ - UAS_ASSIGN(sp->of.dstCID, sp->remCID); /* Destination CID */ - UAL_ASSIGN(sp->of.pktAttnRecvSeq, netdw(sp->attnRecvSeq)); + UAS_ASSIGN_HTON(sp->of.version, netw(0x0100)); /* Fill in open connection parms */ + UAS_ASSIGN_HTON(sp->of.dstCID, sp->remCID); /* Destination CID */ + UAL_ASSIGN_HTON(sp->of.pktAttnRecvSeq, sp->attnRecvSeq); bcopy((caddr_t) &sp->of, (caddr_t) dp, ADSP_OPEN_FRAME_LEN); len += ADSP_OPEN_FRAME_LEN; if (i & B_CTL_OREQ) { - UAS_ASSIGN(sp->f.CID, sp->locCID); + UAS_ASSIGN_HTON(sp->f.CID, sp->locCID); mask = B_CTL_OREQ; sp->f.descriptor = ADSP_CONTROL_BIT | ADSP_CTL_OREQ; } else if (i & B_CTL_OACK) { - UAS_ASSIGN(sp->f.CID, sp->locCID); + UAS_ASSIGN_HTON(sp->f.CID, sp->locCID); mask = B_CTL_OACK; sp->f.descriptor = ADSP_CONTROL_BIT | ADSP_CTL_OACK; } else if (i & B_CTL_OREQACK) { - UAS_ASSIGN(sp->f.CID, sp->locCID); + UAS_ASSIGN_HTON(sp->f.CID, sp->locCID); mask = B_CTL_OREQACK; sp->f.descriptor = ADSP_CONTROL_BIT | ADSP_CTL_OREQACK; } else /* Deny */ @@ -227,7 +223,7 @@ top: } } else { /* seq # of next byte to send */ - UAL_ASSIGN(sp->f.pktFirstByteSeq, netdw(sp->sendSeq)); + UAL_ASSIGN_HTON(sp->f.pktFirstByteSeq, sp->sendSeq); if (i & B_CTL_CLOSE) { sp->state = sClosed; /* Now we're closed */ @@ -306,7 +302,7 @@ top: } if (sp->sendDataAck) { - UAL_ASSIGN(sp->f.pktFirstByteSeq, netdw(sp->sendSeq)); /* seq # of next byte */ + UAL_ASSIGN_HTON(sp->f.pktFirstByteSeq, sp->sendSeq); /* seq # of next byte */ attnMsg = 0; sp->f.descriptor = ADSP_CONTROL_BIT; goto sendit; @@ -317,7 +313,6 @@ top: */ if (mp) gbuf_freem(mp); - ATENABLE(s, sp->lock); if (mlist) adsp_sendddp(sp, mlist, 0, &sp->remoteAddress, DDP_ADSP); return; @@ -325,13 +320,13 @@ top: sendit: if (attnMsg) { - UAL_ASSIGN(sp->f.pktFirstByteSeq, netdw(sp->attnSendSeq)); - UAL_ASSIGN(sp->f.pktNextRecvSeq, netdw(sp->attnRecvSeq)); + UAL_ASSIGN_HTON(sp->f.pktFirstByteSeq, sp->attnSendSeq); + UAL_ASSIGN_HTON(sp->f.pktNextRecvSeq, sp->attnRecvSeq); UAS_ASSIGN(sp->f.pktRecvWdw, 0); /* Always zero in attn pkt */ } else { sp->sendDataAck = 0; - UAL_ASSIGN(sp->f.pktNextRecvSeq, netdw(sp->recvSeq)); - UAS_ASSIGN(sp->f.pktRecvWdw, netw(CalcRecvWdw(sp))); + UAL_ASSIGN_HTON(sp->f.pktNextRecvSeq, sp->recvSeq); + UAS_ASSIGN_HTON(sp->f.pktRecvWdw, CalcRecvWdw(sp)); } if (use_attention_code) { bcopy((caddr_t) &sp->f, (caddr_t) gbuf_wptr(mp), ADSP_FRAME_LEN + 2); @@ -349,12 +344,10 @@ sendit: if (sp->state == sClosed) { /* must have sent a close advice */ /* send header + data */ - ATENABLE(s, sp->lock); adsp_sendddp(sp, mlist, 0, &sp->remoteAddress, DDP_ADSP); DoClose(sp, 0, -1); /* complete close! */ return; } - ATENABLE(s, sp->lock); if (sp->state == sClosing) /* See if we were waiting on this write */ CheckOkToClose(sp); goto top; @@ -409,7 +402,7 @@ attachData(sp, mp) * The easiest fix to this timing dilemma seems to be to reset * sendSeq to first Rtmt Seq if we're sending the first packet. */ - UAL_ASSIGN(sp->f.pktFirstByteSeq, netdw(sp->sendSeq)); + UAL_ASSIGN_HTON(sp->f.pktFirstByteSeq, sp->sendSeq); if (smp = sp->sbuf_mb) /* Get oldest header */ eom = 1;