Ordinarily a good use of assert. However, there is a potential pitfall here. When you call ``init_utsname_nodename()``, and it fails, you still continue execution, and you could end up in a bad situation when you get here (remember that ``assert`` is a noop in release mode). So I would choose one of two approaches:

1. Handle ``initialised == 0`` gracefully here, and return an empty string.
2. Exit if ``init_utsname_nodename`` fails.

Personally I'm leaning towards the former. Seems less drastic.