e220fa3
From 9f1c0722a3e20047bcffe3a43f229e891da8c01b Mon Sep 17 00:00:00 2001
e220fa3
From: Jeff Layton <jlayton@samba.org>
e220fa3
Date: Wed, 9 Oct 2013 09:05:22 -0400
e220fa3
Subject: [PATCH] data_blob: clean out unused functions
e220fa3
e220fa3
Cut another 6k or so out of the cifs.upcall binary.
e220fa3
e220fa3
Signed-off-by: Jeff Layton <jlayton@samba.org>
e220fa3
---
e220fa3
 data_blob.c | 168 ------------------------------------------------------------
e220fa3
 data_blob.h |  62 ----------------------
e220fa3
 2 files changed, 230 deletions(-)
e220fa3
e220fa3
diff --git a/data_blob.c b/data_blob.c
e220fa3
index 16c78ce..834d810 100644
e220fa3
--- a/data_blob.c
e220fa3
+++ b/data_blob.c
e220fa3
@@ -71,18 +71,6 @@ _PUBLIC_ DATA_BLOB data_blob_talloc_named(TALLOC_CTX *mem_ctx, const void *p, si
e220fa3
 }
e220fa3
 
e220fa3
 /**
e220fa3
- construct a zero data blob, using supplied TALLOC_CTX. 
e220fa3
- use this sparingly as it initialises data - better to initialise
e220fa3
- yourself if you want specific data in the blob
e220fa3
-**/
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_talloc_zero(TALLOC_CTX *mem_ctx, size_t length)
e220fa3
-{
e220fa3
-	DATA_BLOB blob = data_blob_talloc(mem_ctx, NULL, length);
e220fa3
-	data_blob_clear(&blob;;
e220fa3
-	return blob;
e220fa3
-}
e220fa3
-
e220fa3
-/**
e220fa3
 free a data blob
e220fa3
 **/
e220fa3
 _PUBLIC_ void data_blob_free(DATA_BLOB *d)
e220fa3
@@ -94,159 +82,3 @@ _PUBLIC_ void data_blob_free(DATA_BLOB *d)
e220fa3
 	}
e220fa3
 }
e220fa3
 
e220fa3
-/**
e220fa3
-clear a DATA_BLOB's contents
e220fa3
-**/
e220fa3
-_PUBLIC_ void data_blob_clear(DATA_BLOB *d)
e220fa3
-{
e220fa3
-	if (d->data) {
e220fa3
-		memset(d->data, 0, d->length);
e220fa3
-	}
e220fa3
-}
e220fa3
-
e220fa3
-/**
e220fa3
-free a data blob and clear its contents
e220fa3
-**/
e220fa3
-_PUBLIC_ void data_blob_clear_free(DATA_BLOB *d)
e220fa3
-{
e220fa3
-	data_blob_clear(d);
e220fa3
-	data_blob_free(d);
e220fa3
-}
e220fa3
-
e220fa3
-
e220fa3
-/**
e220fa3
-check if two data blobs are equal
e220fa3
-**/
e220fa3
-_PUBLIC_ int data_blob_cmp(const DATA_BLOB *d1, const DATA_BLOB *d2)
e220fa3
-{
e220fa3
-	int ret;
e220fa3
-	if (d1->data == NULL && d2->data != NULL) {
e220fa3
-		return -1;
e220fa3
-	}
e220fa3
-	if (d1->data != NULL && d2->data == NULL) {
e220fa3
-		return 1;
e220fa3
-	}
e220fa3
-	if (d1->data == d2->data) {
e220fa3
-		return d1->length - d2->length;
e220fa3
-	}
e220fa3
-	ret = memcmp(d1->data, d2->data, MIN(d1->length, d2->length));
e220fa3
-	if (ret == 0) {
e220fa3
-		return d1->length - d2->length;
e220fa3
-	}
e220fa3
-	return ret;
e220fa3
-}
e220fa3
-
e220fa3
-/**
e220fa3
-print the data_blob as hex string
e220fa3
-**/
e220fa3
-_PUBLIC_ char *data_blob_hex_string_lower(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob)
e220fa3
-{
e220fa3
-	unsigned int i;
e220fa3
-	char *hex_string;
e220fa3
-
e220fa3
-	hex_string = talloc_array(mem_ctx, char, (blob->length*2)+1);
e220fa3
-	if (!hex_string) {
e220fa3
-		return NULL;
e220fa3
-	}
e220fa3
-
e220fa3
-	/* this must be lowercase or w2k8 cannot join a samba domain,
e220fa3
-	   as this routine is used to encode extended DNs and windows
e220fa3
-	   only accepts lowercase hexadecimal numbers */
e220fa3
-	for (i = 0; i < blob->length; i++)
e220fa3
-		slprintf(&hex_string[i*2], 3, "%02x", blob->data[i]);
e220fa3
-
e220fa3
-	hex_string[(blob->length*2)] = '\0';
e220fa3
-	return hex_string;
e220fa3
-}
e220fa3
-
e220fa3
-_PUBLIC_ char *data_blob_hex_string_upper(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob)
e220fa3
-{
e220fa3
-	unsigned int i;
e220fa3
-	char *hex_string;
e220fa3
-
e220fa3
-	hex_string = talloc_array(mem_ctx, char, (blob->length*2)+1);
e220fa3
-	if (!hex_string) {
e220fa3
-		return NULL;
e220fa3
-	}
e220fa3
-
e220fa3
-	for (i = 0; i < blob->length; i++)
e220fa3
-		slprintf(&hex_string[i*2], 3, "%02X", blob->data[i]);
e220fa3
-
e220fa3
-	hex_string[(blob->length*2)] = '\0';
e220fa3
-	return hex_string;
e220fa3
-}
e220fa3
-
e220fa3
-/**
e220fa3
-  useful for constructing data blobs in test suites, while
e220fa3
-  avoiding const warnings
e220fa3
-**/
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_string_const(const char *str)
e220fa3
-{
e220fa3
-	DATA_BLOB blob;
e220fa3
-	blob.data = discard_const_p(uint8_t, str);
e220fa3
-	blob.length = str ? strlen(str) : 0;
e220fa3
-	return blob;
e220fa3
-}
e220fa3
-
e220fa3
-/**
e220fa3
-  useful for constructing data blobs in test suites, while
e220fa3
-  avoiding const warnings
e220fa3
-**/
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_string_const_null(const char *str)
e220fa3
-{
e220fa3
-	DATA_BLOB blob;
e220fa3
-	blob.data = discard_const_p(uint8_t, str);
e220fa3
-	blob.length = str ? strlen(str)+1 : 0;
e220fa3
-	return blob;
e220fa3
-}
e220fa3
-
e220fa3
-/**
e220fa3
- * Create a new data blob from const data 
e220fa3
- */
e220fa3
-
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_const(const void *p, size_t length)
e220fa3
-{
e220fa3
-	DATA_BLOB blob;
e220fa3
-	blob.data = discard_const_p(uint8_t, p);
e220fa3
-	blob.length = length;
e220fa3
-	return blob;
e220fa3
-}
e220fa3
-
e220fa3
-
e220fa3
-/**
e220fa3
-  realloc a data_blob
e220fa3
-**/
e220fa3
-_PUBLIC_ bool data_blob_realloc(TALLOC_CTX *mem_ctx, DATA_BLOB *blob, size_t length)
e220fa3
-{
e220fa3
-	blob->data = talloc_realloc(mem_ctx, blob->data, uint8_t, length);
e220fa3
-	if (blob->data == NULL)
e220fa3
-		return false;
e220fa3
-	blob->length = length;
e220fa3
-	return true;
e220fa3
-}
e220fa3
-
e220fa3
-
e220fa3
-/**
e220fa3
-  append some data to a data blob
e220fa3
-**/
e220fa3
-_PUBLIC_ bool data_blob_append(TALLOC_CTX *mem_ctx, DATA_BLOB *blob,
e220fa3
-				   const void *p, size_t length)
e220fa3
-{
e220fa3
-	size_t old_len = blob->length;
e220fa3
-	size_t new_len = old_len + length;
e220fa3
-	if (new_len < length || new_len < old_len) {
e220fa3
-		return false;
e220fa3
-	}
e220fa3
-
e220fa3
-	if ((const uint8_t *)p + length < (const uint8_t *)p) {
e220fa3
-		return false;
e220fa3
-	}
e220fa3
-	
e220fa3
-	if (!data_blob_realloc(mem_ctx, blob, new_len)) {
e220fa3
-		return false;
e220fa3
-	}
e220fa3
-
e220fa3
-	memcpy(blob->data + old_len, p, length);
e220fa3
-	return true;
e220fa3
-}
e220fa3
-
e220fa3
diff --git a/data_blob.h b/data_blob.h
e220fa3
index 83e6cd5..ccdf30d 100644
e220fa3
--- a/data_blob.h
e220fa3
+++ b/data_blob.h
e220fa3
@@ -61,72 +61,10 @@ _PUBLIC_ DATA_BLOB data_blob_named(const void *p, size_t length, const char *nam
e220fa3
 _PUBLIC_ DATA_BLOB data_blob_talloc_named(TALLOC_CTX *mem_ctx, const void *p, size_t length, const char *name);
e220fa3
 
e220fa3
 /**
e220fa3
- construct a zero data blob, using supplied TALLOC_CTX. 
e220fa3
- use this sparingly as it initialises data - better to initialise
e220fa3
- yourself if you want specific data in the blob
e220fa3
-**/
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_talloc_zero(TALLOC_CTX *mem_ctx, size_t length);
e220fa3
-
e220fa3
-/**
e220fa3
 free a data blob
e220fa3
 **/
e220fa3
 _PUBLIC_ void data_blob_free(DATA_BLOB *d);
e220fa3
 
e220fa3
-/**
e220fa3
-clear a DATA_BLOB's contents
e220fa3
-**/
e220fa3
-_PUBLIC_ void data_blob_clear(DATA_BLOB *d);
e220fa3
-
e220fa3
-/**
e220fa3
-free a data blob and clear its contents
e220fa3
-**/
e220fa3
-_PUBLIC_ void data_blob_clear_free(DATA_BLOB *d);
e220fa3
-
e220fa3
-/**
e220fa3
-check if two data blobs are equal
e220fa3
-**/
e220fa3
-_PUBLIC_ int data_blob_cmp(const DATA_BLOB *d1, const DATA_BLOB *d2);
e220fa3
-
e220fa3
-/**
e220fa3
-print the data_blob as hex string
e220fa3
-**/
e220fa3
-_PUBLIC_ char *data_blob_hex_string_upper(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob);
e220fa3
-
e220fa3
-/**
e220fa3
-print the data_blob as hex string
e220fa3
-**/
e220fa3
-_PUBLIC_ char *data_blob_hex_string_lower(TALLOC_CTX *mem_ctx, const DATA_BLOB *blob);
e220fa3
-
e220fa3
-/**
e220fa3
-  useful for constructing data blobs in test suites, while
e220fa3
-  avoiding const warnings
e220fa3
-**/
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_string_const(const char *str);
e220fa3
-
e220fa3
-/**
e220fa3
-  useful for constructing data blobs in test suites, while
e220fa3
-  avoiding const warnings
e220fa3
-
e220fa3
-  includes the terminating null character (as opposed to data_blo_string_const)
e220fa3
-**/
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_string_const_null(const char *str);
e220fa3
-
e220fa3
-/**
e220fa3
- * Create a new data blob from const data 
e220fa3
- */
e220fa3
-_PUBLIC_ DATA_BLOB data_blob_const(const void *p, size_t length);
e220fa3
-
e220fa3
-/**
e220fa3
-  realloc a data_blob
e220fa3
-**/
e220fa3
-_PUBLIC_ bool data_blob_realloc(TALLOC_CTX *mem_ctx, DATA_BLOB *blob, size_t length);
e220fa3
-
e220fa3
-/**
e220fa3
-  append some data to a data blob
e220fa3
-**/
e220fa3
-_PUBLIC_ bool data_blob_append(TALLOC_CTX *mem_ctx, DATA_BLOB *blob,
e220fa3
-				   const void *p, size_t length);
e220fa3
-
e220fa3
 extern const DATA_BLOB data_blob_null;
e220fa3
 
e220fa3
 #endif /* _SAMBA_DATABLOB_H_ */
e220fa3
-- 
e220fa3
1.8.3.1
e220fa3