Index: uspace/lib/c/include/inet/endpoint.h
===================================================================
--- uspace/lib/c/include/inet/endpoint.h	(revision fab2746a5541d35bc79cbed917f66153231e4a4b)
+++ uspace/lib/c/include/inet/endpoint.h	(revision 7c15d6fdab0640d24d4287b2b625aad65abc0ce9)
@@ -40,4 +40,29 @@
 #include <loc.h>
 
+/** Internet port number ranges
+ *
+ * Port number ranges per RFC 6335 section 6 (Port Number Ranges.
+ * Technically port zero is a system port. But since it is reserved,
+ * we will use it as a special value denoting no port is specified
+ * and we will exclude it from the system port range to disallow
+ * ever assigning it.
+ */
+enum inet_port_ranges {
+	/** Special value meaning no specific port */
+	inet_port_any = 0,
+	/** Lowest system port (a.k.a. well known port) */
+	inet_port_sys_lo = 1,
+	/** Highest system port (a.k.a. well known port) */
+	inet_port_sys_hi = 1023,
+	/** Lowest user port (a.k.a. registered port) */
+	inet_port_user_lo = 1024,
+	/** Highest user port (a.k.a. registered port) */
+	inet_port_user_hi = 49151,
+	/** Lowest dynamic port (a.k.a. private or ephemeral port) */
+	inet_port_dyn_lo = 49152,
+	/** Highest dynamic port (a.k.a. private or ephemeral port) */
+	inet_port_dyn_hi = 65535
+};
+
 /** Internet endpoint (address-port pair), a.k.a. socket */
 typedef struct {
