summaryrefslogtreecommitdiff
path: root/gcc/ada/socket.c
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-11-30 10:38:23 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2009-11-30 10:38:23 +0000
commit52dbd89398d14bf94439efc104c3551b2398016a (patch)
tree8b0a240aa8ed5792f527be14bd43e2be09bd2b77 /gcc/ada/socket.c
parent409a375f7e8602e12096eeeb10c65fc28cd9e7dc (diff)
downloadgcc-52dbd89398d14bf94439efc104c3551b2398016a.tar.gz
2009-11-30 Bob Duff <duff@adacore.com>
* socket.c: Add more accessor functions for struct servent (need setters as well as getters). * g-sothco.ads (Servent): Declare interfaces to C setter functions for struct servent. * g-sttsne-locking.adb (Copy_Service_Entry): Use setter functions for struct servent. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154777 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/socket.c')
-rw-r--r--gcc/ada/socket.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc/ada/socket.c b/gcc/ada/socket.c
index 0bc4b430c18..76755643161 100644
--- a/gcc/ada/socket.c
+++ b/gcc/ada/socket.c
@@ -91,6 +91,10 @@ extern char * __gnat_servent_s_name (struct servent *);
extern char ** __gnat_servent_s_aliases (struct servent *);
extern int __gnat_servent_s_port (struct servent *);
extern char * __gnat_servent_s_proto (struct servent *);
+extern void __gnat_servent_set_s_name (struct servent *, char *);
+extern void __gnat_servent_set_s_aliases (struct servent *, char **);
+extern void __gnat_servent_set_s_port (struct servent *, int);
+extern void __gnat_servent_set_s_proto (struct servent *, char *);
#if defined (__vxworks) || defined (_WIN32)
extern int __gnat_inet_pton (int, const char *, void *);
#endif
@@ -535,6 +539,8 @@ __gnat_inet_pton (int af, const char *src, void *dst) {
* };
*/
+/* Getters */
+
char *
__gnat_servent_s_name (struct servent * s)
{
@@ -559,6 +565,31 @@ __gnat_servent_s_proto (struct servent * s)
return s->s_proto;
}
+/* Setters */
+
+void
+__gnat_servent_set_s_name (struct servent * s, char * s_name)
+{
+ s->s_name = s_name;
+}
+
+void
+__gnat_servent_set_s_aliases (struct servent * s, char ** s_aliases)
+{
+ s->s_aliases = s_aliases;
+}
+
+void
+__gnat_servent_set_s_port (struct servent * s, int s_port)
+{
+ s->s_port = s_port;
+}
+
+void
+__gnat_servent_set_s_proto (struct servent * s, char * s_proto)
+{
+ s->s_proto = s_proto;
+}
#else
# warning Sockets are not supported on this platform