bsc: Clear the hand-over in case the new_lchan is failing

When the new_lchan for handover is failing we should stop the
handover operation. This is fixing a crash that we get a timeout
on the lchan and have no conn set to it. Introduce a flag to
the bsc_clear_handover to not free the lchan. In case the ho_lchan
is failing we do not want to call lchan_release as it would
reset the state.
diff --git a/openbsc/include/openbsc/handover.h b/openbsc/include/openbsc/handover.h
index 5d71057..9d9a90b 100644
--- a/openbsc/include/openbsc/handover.h
+++ b/openbsc/include/openbsc/handover.h
@@ -9,6 +9,6 @@
 int bsc_handover_start(struct gsm_lchan *old_lchan, struct gsm_bts *bts);
 
 /* clear any operation for this connection */
-void bsc_clear_handover(struct gsm_subscriber_connection *conn);
+void bsc_clear_handover(struct gsm_subscriber_connection *conn, int free_lchan);
 
 #endif /* _HANDOVER_H */