laforge has posted comments on this change. ( 
https://gerrit.osmocom.org/c/libosmocore/+/21243 )

Change subject: ns2: add support for frame relay
......................................................................


Patch Set 1:

(9 comments)

https://gerrit.osmocom.org/c/libosmocore/+/21243/1/include/osmocom/gprs/frame_relay.h
File include/osmocom/gprs/frame_relay.h:

https://gerrit.osmocom.org/c/libosmocore/+/21243/1/include/osmocom/gprs/frame_relay.h@1
PS1, Line 1: /*! \file frame_relay.h */
missing copyright / license statement (yes, my fault in the initial code, but I 
don't want to mess with your patchset now)


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c
File src/gb/frame_relay.c:

https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c@14
PS1, Line 14:
missing copyright / license statement (yes, my fault in the initial code, but I 
don't want to mess with your patchset now)


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c@106
PS1, Line 106: /* RX Message: 14 [ 00 01 03 08 00 75  95 01 01 00 03 02 01 00 ] 
*/
> this can be dropped right?
what's bad about some examples of the messages in a comment?


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c@222
PS1, Line 222:          ie[2] |= 0x02;
> what are these 0x02 0x04 0x08? Please add defines for those.
They are the bits we need to use for the "active" "add" and "del" situations. I 
find the existing code sufficiently clear, as the name of the function is 
visible from every "if" statement above.


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c@366
PS1, Line 366:  link->succeed = link->succeed << 1;
> link->succeed <<= 1;
works either way, there is no rule that your version is superior or preferred, 
IMHO. Matter of taste.


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c@461
PS1, Line 461:                          LOGPFRL(link, LOGL_ERROR, "Could not 
create DLC %d\n", dlci);
> return, or directly OSMO_ASERT.
why? all the other DLCs in the message might just as well have been created?  
This function is executed in response to data received from the peer.  I don't 
think we should assert here.


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/frame_relay.c@468
PS1, Line 468:          dlc->add = pvc->new;
> not sure if this "new" here will cause problems when compiling with c++.
we do not anticipate the compilation of the frame relay code in C++ programs.


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/gprs_ns2_fr.c
File src/gb/gprs_ns2_fr.c:

https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/gprs_ns2_fr.c@86
PS1, Line 86: struct iphdr
> Don't we have this defined somewhere else? We should move this to some 
> osmocom compat header IMHO, s […]
We don't really support FreeBSD, Apple or Cygwin platforms, so best to remove 
it altogether.  Nobody ever even does compile testing on these.


https://gerrit.osmocom.org/c/libosmocore/+/21243/1/src/gb/gprs_ns2_fr.c@301
PS1, Line 301:  /* FIXME half writes */
> IIUC this should put stuff into a wqueue?
yes, indeed.  An osmo_wqueue is probably the best approach.  I also think that 
for datagram oriented sockets you either can write a full packet or you cannot 
write, so you don't have to care about partial writes.   A partial write would 
make no sense, as every write is one packet on the network (unless you play 
with CORK options).



--
To view, visit https://gerrit.osmocom.org/c/libosmocore/+/21243
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Change-Id: Id3b49f93d33c271f77cd9c9db03cde6b727a4d30
Gerrit-Change-Number: 21243
Gerrit-PatchSet: 1
Gerrit-Owner: lynxis lazus <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: pespin <[email protected]>
Gerrit-CC: laforge <[email protected]>
Gerrit-Comment-Date: Thu, 19 Nov 2020 17:44:56 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: pespin <[email protected]>
Gerrit-MessageType: comment

Reply via email to