Beh, non vedo tante differenze con quello che hai già fatto.
A parte tutti i discorsi sulla "sicurezza" effettiva di un login simile (ovvero invio delle password in chiaro, adozione di particolari sistemi ...) all'atto della connessione puoi inviare un messaggio con utenza e password e ottenere la risposta dal server.
Non devi "condividere una funzione" ma stabilire un protocollo.
Dal client invii specifici messaggi con dei "comandi", ad esempio
LOGIN:userwd
e il server li riconosce. Tutto qui.