Patch-ID# 100671-04
Keywords: TLI hang panic assertion failed mbuf leak
Synopsis: SunOS 4.1.2;4.1.3: TLI causes application program to hang and mbuf leak.
Date: Jan/20/94

SunOS release: 4.1.2, 4.1.3

Unbundled Product: 

Unbundled Release: 

Topic: TLI patch

BugId's fixed with this patch: 1059282 1094895 1111395 1148365 1148146

Changes incorporated in this version: 1148146

Relevant Architecture: sparc
    NOTE: sun4, sun4c, sun4m

Patches which may conflict with this patch: 

Files included with this patch: tcp_tli.o

Problem Description: 

1148146:
while a TLI client is doing a t_getstate, the process will
submit a job to TLI subsystem and sleeps in strdoioctl. This job
is queued on the TLI service queue. If at this time, a disconnect request
comes from the server, this t_getstate request will be flushed away from the job
queue. Hence, the sleeping process will never be awakened.

1148365:
Under SunOS 4.1.3, an mbuf leaking problem exists when running a TLI 
application. This causes the system to hang after a period of time.

1111395:
Applications hang if printf() instead of write() is used via listen/nlsadmin.
The problem is TLI subsystem does not handle certain IOCTL calls. 
It simply ignores them without generating a reply.

1094895:
If tli device is open/closed back to back many times, the sending process
will hang eventually. 

1059282:
If the customer's TLI server program issues an exit statement after sending 
out all messages, the client reboots with the following message when attempt 
to issue t_snd():

panic: assertion failed: q->q_next, file: ../../os/str_buf.c, line: 1707


Install Instructions: 
As root:
# mv /sys/sun{4,4c,4m}/OBJ/tcp_tli.o /sys/sun{4,4c,4m}/OBJ/tcp_tli.o.FCS
# cp sun{4,4c,4m}/{OS Level}/tcp_tli.o /sys/sun{4,4c,4m}/OBJ/tcp_tli.o

rerun /etc/config <kernel-name>
and make and install the new kernel.
Please refer to the system and networking administration manual
for details on building and installing a new kernel




