1. 10 12月, 2013 1 次提交
  2. 04 9月, 2013 1 次提交
  3. 16 4月, 2012 1 次提交
  4. 18 10月, 2011 1 次提交
    • M
      x25: Handle undersized/fragmented skbs · cb101ed2
      Matthew Daley 提交于
      There are multiple locations in the X.25 packet layer where a skb is
      assumed to be of at least a certain size and that all its data is
      currently available at skb->data.  These assumptions are not checked,
      hence buffer overreads may occur.  Use pskb_may_pull to check these
      minimal size assumptions and ensure that data is available at skb->data
      when necessary, as well as use skb_copy_bits where needed.
      Signed-off-by: NMatthew Daley <mattjd@gmail.com>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: Andrew Hendry <andrew.hendry@gmail.com>
      Cc: stable <stable@kernel.org>
      Acked-by: NAndrew Hendry <andrew.hendry@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cb101ed2
  5. 31 3月, 2011 1 次提交
  6. 08 2月, 2011 1 次提交
    • A
      x25: possible skb leak on bad facilities · 95c30430
      andrew hendry 提交于
      Originally x25_parse_facilities returned
      -1 for an error
       0 meaning 0 length facilities
      >0 the length of the facilities parsed.
      
      5ef41308 ("x25: Prevent crashing when parsing bad X.25 facilities") introduced more
      error checking in x25_parse_facilities however used 0 to indicate bad parsing
      a6331d6f ("memory corruption in X.25 facilities parsing") followed this further for
      DTE facilities, again using 0 for bad parsing.
      
      The meaning of 0 got confused in the callers.
      If the facilities are messed up we can't determine where the data starts.
      So patch makes all parsing errors return -1 and ensures callers close and don't use the skb further.
      Reported-by: NAndy Whitcroft <apw@canonical.com>
      Signed-off-by: NAndrew Hendry <andrew.hendry@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      95c30430
  7. 13 11月, 2010 1 次提交
  8. 04 11月, 2010 1 次提交
  9. 08 4月, 2010 2 次提交
    • J
      x.25 attempts to negotiate invalid throughput · ddd0451f
      John Hughes 提交于
      The current X.25 code has some bugs in throughput negotiation:
      
         1. It does negotiation in all cases, usually there is no need
         2. It incorrectly attempts to negotiate the throughput class in one
            direction only.  There are separate throughput classes for input
            and output and if either is negotiated both mist be negotiates.
      
      This is bug https://bugzilla.kernel.org/show_bug.cgi?id=15681
      
      This bug was first reported by Daniel Ferenci to the linux-x25 mailing
      list on 6/8/2004, but is still present.
      
      The current (2.6.34) x.25 code doesn't seem to know that the X.25
      throughput facility includes two values, one for the required
      throughput outbound, one for inbound.
      
      This causes it to attempt to negotiate throughput 0x0A, which is
      throughput 9600 inbound and the illegal value "0" for inbound
      throughput.
      
      Because of this some X.25 devices (e.g. Cisco 1600) refuse to connect
      to Linux X.25.
      
      The following patch fixes this behaviour.  Unless the user specifies a
      required throughput it does not attempt to negotiate.  If the user
      does not specify a throughput it accepts the suggestion of the remote
      X.25 system.  If the user requests a throughput then it validates both
      the input and output throughputs and correctly negotiates them with
      the remote end.
      Signed-off-by: NJohn Hughes <john@calva.com>
      Tested-by: NAndrew Hendry <andrew.hendry@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ddd0451f
    • J
      x25: Patch to fix bug 15678 - x25 accesses fields beyond end of packet. · f5eb917b
      John Hughes 提交于
      Here is a patch to stop X.25 examining fields beyond the end of the packet.
      
      For example, when a simple CALL ACCEPTED was received:
      
      	10 10 0f
      
      x25_parse_facilities was attempting to decode the FACILITIES field, but this
      packet contains no facilities field.
      Signed-off-by: NJohn Hughes <john@calva.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f5eb917b
  10. 29 1月, 2008 1 次提交
    • E
      [X25]: Avoid divides and sparse warnings · 6bf1574e
      Eric Dumazet 提交于
         CHECK   net/x25/af_x25.c
      net/x25/af_x25.c:117:46: warning: expensive signed divide
         CHECK   net/x25/x25_facilities.c
      net/x25/x25_facilities.c:209:30: warning: expensive signed divide
         CHECK   net/x25/x25_in.c
      net/x25/x25_in.c:250:26: warning: expensive signed divide
         CHECK   net/x25/x25_proc.c
      net/x25/x25_proc.c:48:11: warning: context imbalance in 'x25_seq_route_start'
      - wrong count at exit
      net/x25/x25_proc.c:72:13: warning: context imbalance in 'x25_seq_route_stop' -
      unexpected unlock
      net/x25/x25_proc.c:112:11: warning: context imbalance in
      'x25_seq_socket_start' - wrong count at exit
      net/x25/x25_proc.c:129:13: warning: context imbalance in 'x25_seq_socket_stop'
      - unexpected unlock
      net/x25/x25_proc.c:190:11: warning: context imbalance in
      'x25_seq_forward_start' - wrong count at exit
      net/x25/x25_proc.c:215:13: warning: context imbalance in
      'x25_seq_forward_stop' - unexpected unlock
         CHECK   net/x25/x25_subr.c
      net/x25/x25_subr.c:362:57: warning: expensive signed divide
      Signed-off-by: NEric Dumazet <dada1@cosmosbay.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6bf1574e
  11. 11 2月, 2007 1 次提交
  12. 09 1月, 2007 1 次提交
  13. 22 3月, 2006 1 次提交
    • S
      [X25]: allow ITU-T DTE facilities for x25 · a64b7b93
      Shaun Pereira 提交于
      Allows use of the optional user facility to insert ITU-T
      (http://www.itu.int/ITU-T/) specified DTE facilities in call set-up x25
      packets.  This feature is optional; no facilities will be added if the ioctl
      is not used, and call setup packet remains the same as before.
      
      If the ioctls provided by the patch are used, then a facility marker will be
      added to the x25 packet header so that the called dte address extension
      facility can be differentiated from other types of facilities (as described in
      the ITU-T X.25 recommendation) that are also allowed in the x25 packet header.
      
      Facility markers are made up of two octets, and may be present in the x25
      packet headers of call-request, incoming call, call accepted, clear request,
      and clear indication packets.  The first of the two octets represents the
      facility code field and is set to zero by this patch.  The second octet of the
      marker represents the facility parameter field and is set to 0x0F because the
      marker will be inserted before ITU-T type DTE facilities.
      
      Since according to ITU-T X.25 Recommendation X.25(10/96)- 7.1 "All networks
      will support the facility markers with a facility parameter field set to all
      ones or to 00001111", therefore this patch should work with all x.25 networks.
      
      While there are many ITU-T DTE facilities, this patch implements only the
      called and calling address extension, with placeholders in the
      x25_dte_facilities structure for the rest of the facilities.
      
      Testing:
      
      This patch was tested using a cisco xot router connected on its serial ports
      to an X.25 network, and on its lan ports to a host running an xotd daemon.
      
      It is also possible to test this patch using an xotd daemon and an x25tap
      patch, where the xotd daemons work back-to-back without actually using an x.25
      network.  See www.fyonne.net for details on how to do this.
      Signed-off-by: NShaun Pereira <spereira@tusc.com.au>
      Acked-by: NAndrew Hendry <ahendry@tusc.com.au>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a64b7b93
  14. 23 6月, 2005 1 次提交
    • S
      [X25]: Fast select with no restriction on response · ebc3f64b
      Shaun Pereira 提交于
      This patch is a follow up to patch 1 regarding "Selective Sub Address
      matching with call user data".  It allows use of the Fast-Select-Acceptance
      optional user facility for X.25.
      
      This patch just implements fast select with no restriction on response
      (NRR).  What this means (according to ITU-T Recomendation 10/96 section
      6.16) is that if in an incoming call packet, the relevant facility bits are
      set for fast-select-NRR, then the called DTE can issue a direct response to
      the incoming packet using a call-accepted packet that contains
      call-user-data.  This patch allows such a response.  
      
      The called DTE can also respond with a clear-request packet that contains
      call-user-data.  However, this feature is currently not implemented by the
      patch.
      
      How is Fast Select Acceptance used?
      By default, the system does not allow fast select acceptance (as before).
      To enable a response to fast select acceptance,  
      After a listen socket in created and bound as follows
      	socket(AF_X25, SOCK_SEQPACKET, 0);
      	bind(call_soc, (struct sockaddr *)&locl_addr, sizeof(locl_addr));
      but before a listen system call is made, the following ioctl should be used.
      	ioctl(call_soc,SIOCX25CALLACCPTAPPRV);
      Now the listen system call can be made
      	listen(call_soc, 4);
      After this, an incoming-call packet will be accepted, but no call-accepted 
      packet will be sent back until the following system call is made on the socket
      that accepts the call
      	ioctl(vc_soc,SIOCX25SENDCALLACCPT);
      The network (or cisco xot router used for testing here) will allow the 
      application server's call-user-data in the call-accepted packet, 
      provided the call-request was made with Fast-select NRR.
      Signed-off-by: NShaun Pereira <spereira@tusc.com.au>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ebc3f64b
  15. 17 4月, 2005 1 次提交
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4