diff options
author | Test_User <hax@andrewyu.org> | 2024-06-12 19:04:16 -0400 |
---|---|---|
committer | Test_User <hax@andrewyu.org> | 2024-06-12 19:04:16 -0400 |
commit | a785916b1840dca3acec39d17f454a00975282a0 (patch) | |
tree | 338109f8ab63dfa6787ccf65a9557fd39a13776d /server_network.c | |
parent | 47d7e30f6acb1c170c8e5e15f2656b89a33384f7 (diff) | |
download | haxircd-a785916b1840dca3acec39d17f454a00975282a0.tar.gz haxircd-a785916b1840dca3acec39d17f454a00975282a0.zip |
str_clone finally, as well as some other stuff
Diffstat (limited to 'server_network.c')
-rw-r--r-- | server_network.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/server_network.c b/server_network.c index ea92d3c..aeca696 100644 --- a/server_network.c +++ b/server_network.c @@ -33,6 +33,8 @@ #include <unistd.h> #include "config.h" +#include "haxstring.h" +#include "haxstring_utils.h" #include "main.h" #include "protocols.h" #include "server_network.h" @@ -187,23 +189,14 @@ int add_server(struct string from, struct string attached_to, struct string sid, new_info->net = net; new_info->handle = handle; - new_info->sid.data = malloc(sid.len); - if (!new_info->sid.data) + if (str_clone(&(new_info->sid), sid) != 0) goto add_server_free_new_info; - memcpy(new_info->sid.data, sid.data, sid.len); - new_info->sid.len = sid.len; - new_info->name.data = malloc(name.len); - if (!new_info->name.data) + if (str_clone(&(new_info->name), name) != 0) goto add_server_free_sid; - memcpy(new_info->name.data, name.data, name.len); - new_info->name.len = name.len; - new_info->fullname.data = malloc(fullname.len); - if (!new_info->fullname.data) + if (str_clone(&(new_info->fullname), fullname) != 0) goto add_server_free_name; - memcpy(new_info->fullname.data, fullname.data, fullname.len); - new_info->fullname.len = fullname.len; // new_info->next shares string with sid of the server it points to |