| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
socket: it should only look for existing translation entries,
not create new ones (no matter how it got the idea).
Approved by: re(scottl)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
kernel module. LibAlias is not aware about checksum offloading,
so the caller should provide checksum calculation. (The only
current consumer is ng_nat(4)). When TCP packet internals has
been changed and it requires checksum recalculation, a cookie
is set in th_x2 field of TCP packet, to inform caller that it
needs to recalculate checksum. This ugly hack would be removed
when LibAlias is made more kernel friendly.
Incremental checksum updates are left as is, since they don't
conflict with offloading.
Approved by: re (scottl)
|
|
|
|
|
|
|
| |
possibility to compile libalias without legacy support.
- Use correct way to mark variable as unused.
Approved by: re (dwhite)
|
|
|
|
| |
temporary variable, check it and then cast to in_addr_t.
|
|
|
|
| |
not supported for kernel build.
|
|
|
|
|
| |
- copy inet_aton() from libc
- disable getservbyname() lookup and accept only numeric port
|
| |
|
| |
|
|
|
|
|
| |
Noticed by: njl
Pointy hat to: glebius
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- kernel module declarations and handler.
- macros to map malloc(3) calls to malloc(9) ones.
- malloc(9) declarations.
- call finishoff() from module handler MOD_UNLOAD case
instead of atexit(3).
- use panic(9) instead of abort(3)
- take time from time_second instead of gettimeofday(2)
- define INADDR_NONE
|
| |
|
| |
|
|
|
|
| |
library and kernel module.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
libalias.
In /usr/src/lib/libalias/alias.c, the functions LibAliasIn and
LibAliasOutTry call the legacy PacketAliasIn/PacketAliasOut instead
of LibAliasIn/LibAliasOut when the PKT_ALIAS_REVERSE option is set.
In this case, the context variable "la" gets lost because the legacy
compatibility routines expect "la" to be global. This was obviously
an oversight when rewriting the PacketAlias* functions to the
LibAlias* functions.
The fix (as shown in the patch below) is to remove the legacy
subroutine calls and replace with the new ones using the "la" struct
as the first arg.
Submitted by: Gil Kloepfer <fgil@kloepfer.org>
Confirmed by: <nicolai@catpipe.net>
PR: 76839
MFC after: 3 days
|
|
|
|
|
|
|
|
|
| |
a libalias application (e.g. natd, ppp, etc.) to crash. Note: Skinny support
is not enabled in natd or ppp by default.
Approved by: secteam (nectar)
MFC after: 1 day
Secuiryt: This fixes a remote DoS exploit
|
| |
|
|
|
|
| |
MFC after: 3 days
|
|
|
|
| |
any fake value.
|
| |
|
|
|
|
|
|
|
|
|
| |
functions. Basically, the ip_next() function was used to get the PPTP and
Skinny headers when tcp_next() should have been used instead. Symptoms of
this included a segfault in natd when trying to process a PPTP or Skinny
packet.
Approved by: des
|
|
|
|
| |
open where people can see them and hopefully fix them.
|
|
|
|
|
|
|
| |
{ip,udp,tcp} header and return a void * pointing to the payload (i.e. the
first byte past the end of the header and any required padding). Use them
consistently throughout libalias to a) reduce code duplication, b) improve
code legibility, c) get rid of a bunch of alignment warnings.
|
|
|
|
|
|
| |
a short pointer. The previous implementation seems to be in a gray zone
of the C standard, and GCC generates incorrect code for it at -O2 or
higher on some platforms.
|
|
|
|
| |
alpha.
|
|
|
|
|
|
|
|
|
| |
named link, foo_link or link_foo to lnk, foo_lnk or lnk_foo, fixing
signed / unsigned comparisons, and shoving unused function arguments
under the carpet.
I was hoping WARNS?=6 might reveal more serious problems, and perhaps
the source of the -O2 breakage, but found no smoking gun.
|
| |
|
| |
|
|
|
|
| |
does not create a new entry if none is found.
|
| |
|
|
|
|
|
| |
Fixed markup.
Fixed examples to match the new API.
|
|
|
|
| |
Reported and submitted by: Sean McNeil (sean at mcneil.com)
|
| |
|
|
|
|
|
| |
Reviewed by: ru
Approved by: silence on the lists
|
|
|
|
|
| |
The result isn't quite knf, but it's knfer than the original, and far
more consistent.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Makes it possible to have multiple packet aliasing instances in a
single process by moving all static and global variables into an
instance structure called "struct libalias".
Redefine a new API based on s/PacketAlias/LibAlias/g
Add new "instance" argument to all functions in the new API.
Implement old API in terms of the new API.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Skinny is the protocol used by Cisco IP phones to talk to Cisco Call
Managers. With this code, one can use a Cisco IP phone behind a FreeBSD
NAT gateway.
Currently, having the Call Manager behind the NAT gateway is not supported.
More information on enabling Skinny support in libalias, natd, and ppp
can be found in those applications' manpages.
PR: 55843
Reviewed by: ru
Approved by: ru
MFC after: 30 days
|
|
|
|
|
| |
Submitted by: Stefan Farfeleder
PR: bin/56653
|
| |
|
| |
|
|
|
|
|
|
| |
binaries in /bin and /sbin installed in /lib. Only the versioned files
reside in /lib, the .so symlink continues to live /usr/lib so the
toolchain doesn't need to be modified.
|
|
|
|
|
|
| |
original source IP address, as promised in the manual page.
Spotted by: Vaclav Petricek
|
|
|
|
| |
limit" mdoc(7) atavism.
|
|
|
|
| |
are _destination_ address and port.
|
| |
|
| |
|