Points outside the view frustum must be clipped. The clipping could be done in almost any coordinate system, but it's best to do clipping in the CCS because:
In the figure below, the segment $pq$ in the VCS is transformed to the segment $p'q'$ in the NDCS. If we clip $p'q'$, the segment will appear to be exiting the far plane of the canonical view volume. But it should really exit the top plane!
For example, if $q = [0,0,100,1]^T$ and $n=1, f=2, r=+1, l=-1, t=+1, b=-1$ then $q$ is behind the viewpoint (as above) and the projection matrix is
$\left[\begin{array}{cccc} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & -3 & -4 \\ 0 & 0 & -1 & 0 \end{array}\right]$
Then $q' = P q = [x', y', z', w']^T = [0, 0, -304, -100]^T$ and, upon division by $w'$ we get $[0, 0, 3.04]^T$, which is ahead of the viewer instead of behind, as the original $q$ was.
For a better intuition, consider what happens to $q'$ as $q$ is moved along the $z$ axis of the VCS:
If the point were in NDCS, we would clip against the six planes that define the faces of the canonical view volume:
The corresponding planes in the CCS are:
Given a segment $p'q'$ in the CCS, we clip against each of the six planes. Note that these are planes in a 4D homogeneous space, but clipping works the same in any dimension, as we'll see below.
A line segment $ab$ has endpoints $a$ and $b$. It can be written in parametric form as
For $t \in [0,1]$, $\ell(t)$ is between $a$ and $b$. For $t$ outside this interval, $\ell(t)$ is not on the segment $ab$.
A plane $\pi$ is defined by a normal, $n$, and a distance from the origin, $d$. All points $x$ on the plane satisfy the implicit equation
Points above the plane (i.e. on the side of the plane that $n$ points to) will have $\pi(x) > 0$. Points below the plane will have $\pi(x) < 0$.
Segment $ab$ is clipped by the plane if and only if its endpoints lie on different sides of the plane. So compute $\pi(a)$ and $\pi(b)$. Then $ab$ intesects $\pi$ if and only if $\pi(a)$ and $\pi(b)$ have different signs. (If one or both are equal to zero, $ab$ is not clipped because it does not cross the plane.)
If $ab$ is clipped by $\pi$, we need to find the point at which $ab$ intersects $\pi$, to clip $ab$ at that point.
To find the point of intersection, substitute the parametric segment equation into the implicit plane equation and solve for the parameter $t$:
Then the intersection point is $\ell(t)$.