From 62ee38804c60c5875ce3c78674419ee137deb8db Mon Sep 17 00:00:00 2001 From: Chuck Lever Date: Fri, 19 Oct 2012 10:38:51 -0400 Subject: mountd: Add exportent_release() Split out the logic that releases dynamically allocated data in an exportent. The junction resolution code will invoke this to clean up the junction exportent once it has been dumped to the kernel. Signed-off-by: Chuck Lever Signed-off-by: Steve Dickson --- support/export/export.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'support/export/export.c') diff --git a/support/export/export.c b/support/export/export.c index 0257903..6b1d045 100644 --- a/support/export/export.c +++ b/support/export/export.c @@ -31,16 +31,21 @@ static nfs_export * export_allowed_internal(const struct addrinfo *ai, const char *path); +void +exportent_release(struct exportent *eep) +{ + xfree(eep->e_squids); + xfree(eep->e_sqgids); + free(eep->e_mountpoint); + free(eep->e_fslocdata); + free(eep->e_uuid); + xfree(eep->e_hostname); +} + static void export_free(nfs_export *exp) { - xfree(exp->m_export.e_squids); - xfree(exp->m_export.e_sqgids); - free(exp->m_export.e_mountpoint); - free(exp->m_export.e_fslocdata); - free(exp->m_export.e_uuid); - - xfree(exp->m_export.e_hostname); + exportent_release(&exp->m_export); xfree(exp); } -- cgit